1. 다음 ( ) 안에 들어갈 내용으로 알맞은 것은?
"10GB 용량의 하드디스크 8개가 장착된 시스템이다. 하나의 스페어(Spare) 디스크를 구성하고, 나머지 디스크로 RAID-5를 구성하려고 한다. 이 경우에 실제로 사용 가능한 용량은 ( ) GB가 된다"
① 40
② 50
③ 60
④ 70
설명)
RAID5는 데이터의 안전성을 위해 패리티 (Parity) 정보를 분산 저장합니다.
이때 디스크 1개 분량의 용량을 패리티 저장용으로 사용하기 때문에 실제 가용 용량 공식은 아래과 같습니다.
(전체 디스크 개수 - 1) x 디스크당 용량
전체 하드디스크는 8개, 각 용량은 10GB
하나의 스페어 디스크를 구성하므로 실질적으로 RAID 구성에 참여하는 디스크는 8 - 1 = 7개
RAID-5 용량 → 패리티용 제외 가용 디스크 = 7 - 1 = 6개 = 60GB
2. 다음 설명에 해당하는 RAID 관련 기술로 알맞은 것은?
연속된 데이터를 여러 개의 디스크에 라운드 로빈 (Round Robin) 방식으로 기록하는 기술로 하나의 디스크에서 읽어 들이는 것보다 더 빠르게 데이터를 읽거나 쓸 수 있다.
① 스트라이핑 (Striping)
② 미러링 (Mirroring)
③ 패리티 (Parity)
④ ECC (Error Check & Correction)
설명)
데이터를 여러 디스크에 분산하여 동시에 읽고 쓰는 기술입니다. 라운드 로빈 방식(순차적으로 돌아가며 저장)이 스트라이핑을 의미합니다. 읽기/쓰기 속도가 매우 빠릅니다.
RAID-0가 스트라이핑 기술만을 사용하여 속도를 극대화한 방식입니다.
3. LVM 구성할 때 가장 먼저 생성되는 것은?
① VG (Volume Group)
② LV (Logical Volume)
③ PV (Physical Volume)
④ PE (Physical Extend)
설명)
1) PV(Physical Volume, 물리 볼륨) 생성
- 먼저 실제 하드디스크와 파티션(/dev/sdb1 등)을 LVM에서 사용할 수 있도록 "준비" 합니다.
- pvcreate
2) VG (Volume Group, 볼륨 그룹) 생성
- 생성된 PV 들을 하나로 묶어서 큰 용량의 풀 (Pool)을 만듭니다.
- 여러 개의 하드디스크를 하나의 커다란 가상 디스크처럼 취급합니다.
- vgcreate
3) LV (Logical Volume, 논리 볼륨) 생성
- VG 라는 풀에서 사용자가 필요한 만큼의 용량을 할당받아 실제로 사용하는 단계입니다.
- 여기서 파일시스템을 생성하고 마운트해서 사용합니다.
- lvcreate
4. 다음 중 프린터 큐의 작업 정보를 확인하는 명령어로 알맞은 것은?
① lp (인쇄 요청, System V 계열)
② lpr (인쇄 요청, BSD 계열)
③ lprm (작업 취소, lp remove, BSD 계열)
④ lpstat (프린터 큐의 상태와 현재 처리 중인 작업 정보를 출력, System V 계열)
설명)
| 기능 | BSD 계열 (주로 'r' 포함) | System V 계열 |
| 인쇄 요청 | lpr (lp request) | lp |
| 큐 확인 (상태) | lpq | lpstat |
| 작업 취소 | lprm (lp remove) | cancel |
참고)
1. System V (시스템 파이브)
- AT&T 라는 회사가 상업적으로 발전시킨 유닉스의 표준 모델입니다.
- 기업용으로 만들어져서 매우 보수적이고 안정적입니다.
- 시스템 설정 방식이나 명령어 체계가 정형화되어 있습니다.
2. BSD (Berkeley Software Distribution)
- 미국 버클리 대학교 (UC Berkeley)에서 오픈 소스 정신을 담아 발전시킨 계열입니다.
- macOS, FreeBSD, OpenBSD 등이 있습니다.
5. 다음 설명에 해당하는 명칭으로 알맞은 것은?
리눅스 및 유닉스 계열 운영체제에서 사운드를 만들고 캡처하는 인터페이스로 표준 유닉스 시스템 콜(POSIX)에 기반을 두고 있다. 프로젝트 초기에는 Free Software 이었으나 사유화되기도 했다.
① ALSA
② CUPS
③ SANE
④ OSS
설명)
| 약어 | 이름 | 설명 |
| ALSA | Advanced Linux Sound Architecture | 현재 리눅스의 표준 사운드 시스템입니다. OSS의 사유화 문제와 기능적 한계를 극복하기 위해 만들어졌습니다. |
| CUPS | Common Unix Printing System | 애플이 개발한 오픈 소스 프린팅 시스템입니다. |
| SANE | Scanner Access Now Easy | 스캐너를 사용하기 위한 표준 인터페이스 입니다. |
| OSS | Open Sound System | 표준 유닉스 시스템 콜 (POSIX) 기반, 초기 프리 소프트웨어였으나 이후 사유화 되었습니다. |
6. 다음 중 스캐너 사용과 관련된 프로그램으로 알맞은 것은?
① ALSA (Advanced Linux Sound Architecture)
② CUPS (Common Unix Printing System)
③ SANE (Scanner Access Now Easy)
④ LPRng
설명)
LPRng
- BSD 계열의 lpr 시스템이 가진 보안 취약점과 기능적 한계를 극복하기 위해 만들어진 차세대 프린팅 소프트웨어입니다.
- 기존 BSD 계열 명령어와 완벽하게 호환되면서도, 네트워크 프린팅 기능을 강화하고 보안을 높였습니다.
7. 다음 중 데비안 계열 리눅스에서 환경 설정 파일도 포함해서 vsftpd 패키지를 제거하는 명령으로 알맞은 것은?
① apt-get purge vsftpd
② apt-get remove vsftpd
③ apt-get erase vsftpd
④ apt-get delete vsftpd
설명)
- purge: 패키지 파일뿐만 아니라 환경 설정 파일 (Configuration files)까지 모두 삭제합니다.
- remove: 실행 파일(패키지)은 삭제하지만, 나중에 재설치할 경우를 대비해 환경 설정 파일은 남겨둡니다.
- rease/delete: apt-get 에서 공식적으로 사용하는 삭제 명령어 옵션이 아닙니다.
8. 다음 중 rpm 명령으로 의존성이 있는 패키지를 제거하는 명령으로 알맞은 것은?
① rpm -d nmap --nodeps
② rpm -e nmap --nodeps
③ rpm erase nmap --nodeps
④ rpm delete nmap -nodeps
설명)
- rpm -e: 패키지를 제거(erase)할 때 사용하는 기본 옵션입니다.
- nmap: 제거하고자 하는 패키지 이름입니다. (네트워크 탐색 및 보안 감사 오픈소스 도구)
- -d: 패키지가 설치한 문서(documentation) 파일 목록만 보여주는 옵션입니다.
- rpm 명령어는 한 글자 옵션을 기본으로 사용합니다. apt-get 처럼 단어 형태의 명령어를 바로 뒤에 붙이지 않습니다.
| 구분 | 데비안 계열 (Ubuntu 등) | 레드햇 계열 (CentOS, RHEL 등) |
| 저수준 도구 | dpkg | rpm |
| 고수준 도구 | apt-get | yum / dnf |
| 삭제 명령어 | apt-get pruge | rpm -e |
| 의존성 무시 | --force-depends | --nodeps |
9. 다음은 확장 패키지 관련 저장소를 설치하는 과정이다. ( ) 안에 들어갈 내용으로 알맞은 것은?
# yum install ( )
① epel
② epel-repository
③ epel-release
④ epel-download
설명)
EPEL (Extra Packages for Enterprise Linux)
- 레드햇 계열 리눅스는 안정성을 위해 매우 검증된 패키지만 기본으로 제공합니다.
- 이 때문에 최신 툴이나 특정 오픈 소스 소프트웨어가 없는 경우가 많은데, 이를 보완하기 위해 Fedora 프로젝트에서 만든 확장 패키지 저장소가 바로 EPEL 입니다.
yum install epel-release
- 이 명령어는 시스템에 "이제부터 EPEL 저장소에 있는 파일들도 검색해서 설치해줘" 라고 알려주는 설정 파일을 설치하는 과정입니다.
10. 다음은 다운로드 받은 소스 파일의 내용만을 확인하는 과정이다. ( ) 안에 들어갈 내용으로 알맞은 것은?
# tar ( ) php-8.2.7.tar.bz2
① jxvf (x는 압축을 해제한다는 뜻)
② Jxvf (x는 압축을 해제한다는 뜻)
③ jtvf
④ Jtvf
설명)
J: .xz 형식의 압축을 다룰 때 사용하는 옵션입니다.
j: .bz2 형식의 압축을 다룰 때 사용하는 옵션입니다.
t: 압축을 푸는 게 아닌 내부 파일 목록(Table of contents)만 확인할 때 사용합니다.
v: 과정(verbose)을 화면에 자세히 보여달라는 옵션입니다.
f: 뒤에 오는 파일(File) 이름을 지정하겠다는 필수 옵션입니다.
| 확장자 | 압축 방식 | 옵션 (확인용) | 옵션 (해제용) |
| .tar.gz | gzip | ztvf | zxvf |
| .tar.bz2 | bzip2 | jtvf | jxvf |
| .tar.xz | xz | Jtvf | Jxvf |
| 기능 | 옵션 키워드 |
| 생성 | c (Create) |
| 해제 | x (eXtract) |
| 목록 | t (list/Table) |
| 파일 | f (File) |
| 진행 | v (Verbose) |
11. 다음 설명에 해당하는 명령으로 알맞은 것은?
소스 파일의 압축을 푼 디렉터리에서 한 번 작업한 설정이나 관련 파일을 삭제하고 다시 설정 작업을 진행할 때 사용한다.
① make init
② make zero
③ make clean
④ make neat
12. 다음 중 프로그램을 소스 파일로 설치하는 과정으로 알맞은 것은?
① configure → make → make install
② make → configure → make install
③ make → make install → configure
④ make install → configure → make
설명)
1. configure (환경 설정)
- 사용자 시스템의 환경 (CPU 종류, 필요한 라이브러리 존재 여부 등)을 체크하고, 설치 경로 등을 결정합니다.
- 이 과정이 성공하면 컴파일을 위한 설계도인 Makefile이 생성됩니다.
2. make (컴파일)
- 생성된 Makefile을 바탕으로 소스 코드 (.c, .cpp 등)를 컴퓨터가 실행할 수 있는 바이너리 파일로 변환하는 컴파일 작업을 수행합니다.
- 시간이 가장 오래 걸리는 단계입니다.
3. make install (설치)
- 컴파일된 바이너리 파일과 관련 설정 파일들을 시스템의 지정된 경로 (ex. /usr/local/bin 등)로 복사하여 실제로 실행 가능하게 만듭니다.
13. 다음 중 리눅스에서 사용되는 온라인 패키지 관리 도구로 거리가 먼 것은?
① dnf
② rpm
③ zypper
④ apt-get
설명)
rpm (Red Hat Package Manager)
- 로컬에 있는 .rpm 파일을 직접 설치하거나 관리하는 저수준 도구입니다.
- 인터넷을 통해 원격 저장소에서 파일을 자동으로 다운로드하거나 의존성을 스스로 해결하는 기능이 없습니다.
dnf
- 레드햇 계열 (CentOS, RHEL, Fedora 등)의 최신 온라인 패키지 관리 도구입니다. yum의 뒤를 잇는 표준입니다.
zypper
- SUSE 리눅스 계열에서 사용하는 강력한 온라인 패키지 관리 도구입니다.
apt-get
- 데비안 계열 (Ubuntu 등)에서 가장 널리 쓰이는 표준 온라인 패키지 관리 도구입니다.
14. 다음 중 레드햇 계열 리눅스에서 사용되는 패키지 관리 도구로 거리가 먼 것은?
① dnf
② rpm
③ zypper
④ yum
설명)
| 배포판 | 저수준 도구 (Local) | 고수준 도구 (Online) |
| 레드햇 계열 (RHEL, CentOS, Rocky, Fedora) | rpm | yum, dnf |
| 데비안 계열 (Ubuntu, Debian, Linux Mint) | dpkg | apt-get, apt |
| 수세 계열 (openSUSE, SLE) | rpm | zypper |
15. 다음 중 vi 편집기의 ex 명령모드에 대한 설명으로 틀린 것은?
① w → 작업중인 내용을 저장한다.
② w 파일명 → 지정한 '파일명'으로 저장한다.
③ wq → 변경된 내용을 저장하고 종료한다.
④ q → 수정된 사항이 있어도 무조건 종료한다.
설명)
q (quit)
- 변경 사항이 없을 때만 종료됩니다. 만약 내용을 수정했는데 q만 입력하면 "내용이 수정되었으니 저장하거나 강제로 종료(q!)하라" 는 경고 메시지가 뜹니다.
q! (quit forced)
- 수정된 사항이 있어도 저장하지 않고 무조건 (강제로) 종료합니다.
참고)
| 명령어 | 기능 | 설명 |
| :set nu | 행 번호(number) 표시 | 에러가 발생한 줄 번호를 찾을 때 필수입니다. |
| :set nonu | 행 번호 숨기기 | 코드를 복사해서 다른 곳에 붙여넣을 때 번호가 안 끌려오게 합니다. |
| :e! | 마지막 저장 상태로 되돌리기 | 수정을 너무 많이 해서 처음부터 다시 고치고 싶을 때 씁니다. |
| :sh | 잡시 쉘(shell)로 나가기 | 편집 중 명령어를 확인하고 싶을 때 쓰며, exit를 치면 다시 vi로 돌아옵니다. |
16. 다음 ( ) 안에 들어갈 내용으로 알맞은 것은?
vi 편집기의 명령 모드 상태에서 특정 문자열을 아래 방향으로 검색하기 위해서는 ㉮ 기호를 선언한 뒤에 찾으려는 문자열 패턴을 덧붙여서 기재한다. 만약 다음 문자열을 찾으려면 ㉯ 키를 누르면 이동된다.
① ㉮ /, ㉯ n (/ → 검색어 입력, n → 검색어를 찾은 다음 위치로 이동, N → 검색어로 찾은 이전 위치로 이동)
② ㉮ ?, ㉯ n
③ ㉮ /, ㉯ N
④ ㉮ ?, ㉯ N
17. 다음 중 vi 편집기에서 linux로 끝나는 줄의 마지막에 마침표(.)를 덧붙이도록 치환하는 명령으로 알맞은 것은?
① :% s/linux./linux$/
② :% s/linux$/linux./
③ :% s/linux/linux./
④ :% s/linux/linux$/
설명)
명령어 해석
:% s/대상/바꿀내용/
:%
- 파일 전체 범위를 대상으로 작업한다는 의미입니다.
s
- 치환(Substitute)을 시작하겠다는 선언입니다.
/linux$/
- 찾고자 하는 패턴(대상)입니다. 여기서 $는 정규표현식에서 행의 가장 끝을 의미하는 특수 기호입니다.
- 오직 줄의 끝에 붙어있는 linux 만 찾아냅니다.
/linux./
- 해당 패턴을 찾으면 linux. 로 바꾼다는 의미입니다.
18. 다음 중 emacs 편집기를 개발한 인물로 알맞은 것은?
① 빌 조이 (vi)
② 리처드 스톨만 (emacs)
③ 브람 브레나르 (vim)
④ 귀도 반 로섬 (IDLE, python 개발 환경)
19. 다음 중 nano 편집기에서 현재 커서가 위치한 줄의 처음으로 이동할 때 사용하는 키 조합으로 알맞은 것은?
① [Ctrl] + [a] (현재 줄의 처음으로 이동)
② [Ctrl] + [e] (현재 줄의 끝으로 이동)
③ [Ctrl] + [o] (현재 편집 중인 파일 저장)
④ [Ctrl] + [i] (탭 간격만큼 삽입)
추가)
| 구분 | 단축키 | 설명 |
| 커서 이동 관련 | Ctrl + y | 이전 페이지로 이동 (Page Up) |
| Ctrl + v | 다음 페이지로 이동 (Page Down) | |
| 편집 및 검색 | Ctrl + k | 현재 줄 삭제 (잘라내기) |
| Ctrl + u | 붙여넣기 (Uncnt) | |
| Ctrl + w | 문자열 검색 (Where is) | |
| Ctrl + c | 현재 커서의 위치 정보 표시 | |
| 종료 및 도움말 | Ctrl + x | 편집기 종료 |
| Ctrl + g | 도움말 보기 |
20. 다음 중 X 윈도 환경에서만 사용 가능한 편집기로 알맞은 것은?
① nano
② pico (nano의 모태가 된 CLI 기반 편집기)
③ kwrite (KDE 데스크톱 환경용 GUI 편집기)
④ vim (vi 를 확장한 대표적인 CLI 기반 편집기)
21. 다음 중 작업번호가 2번인 백그라운드 프로세스를 종료시키는 명령으로 알맞은 것은?
① kill 2 (숫자만 쓰면 PID, Process ID가 2번인 프로세스를 종료하라는 명령)
② kill %2 (작업 번호, Job ID가 2번인 프로세스를 종료하라는 명령)
③ kill -j 2 (없는 옵션)
④ kill -b 2 (없는 옵션)
| 명령어 | 기능 |
| jobs | 현재 백그라운드에서 실행 중인 작업 목록과 작업 번호 확인 |
| fg %번호 | 백그라운드 작업을 포그라운드(화면 앞)로 가져오기 |
| bg %번호 | 정지된 작업을 백그라운드에 다시 실행하기 |
| kill -9 %번호 | 해당 작업을 강제 종료하기 (-9는 강제 종료 시그널) |
22. ps 명령의 상태(STAT) 코드 중에 작업은 종료되었으나 부모프로세스에 의해 회수되지 않아 메모리를 차지하고 상태를 나타내는 값으로 알맞은 것은?
① R
② S
③ T
④ Z
설명)
Z (Zombie)
- 프로세스는 종료되었지만, 부모 프로세스가 종료 상태를 확인(wait 시스템 호출)하지 않아 프로세스 테이블에 남아 있는 상태입니다.
- "좀비"라는 명칭처럼 죽었지만 완전히 사라지지 않은 상태를 뜻합니다.
R (Running/Runnable)
- 실행 중이거나 실행 대기 열에 있는 상태입니다.
S (Interruptible Sleep)
- 이벤트나 신호를 기다리며 잠시 대기 중인 상태입니다.
T (Stopped)
- 시그널에 의해 실행이 중단(일시 정지)된 상태입니다.
참조)
| 코드 | 의미 | 설명 |
| D | Uninterruptible Sleep | 입출력(I/O) 작업을 기다리는 중이며, 중단할 수 없는 상태입니다. |
| I | Idle | 유후 상태의 커널 스레드를 나타냅니다. |
| < | High Priority | 우선순위가 높은 프로세스입니다. |
| N | Low Priority | 우선순위가 낮은 프로세스입니다. |
23. 다음 중 프로세스 관련 명령어로 설정 가능한 NI 값의 범위로 알맞은 것은?
① -19 ~ 19
② -19 ~ 20
③ -20 ~ 19
④ -20 ~ 20
설명)
NI(Nice Value)
- 리눅스 시스템에서 프로세스의 우선순위를 조정할 때 사용하는 값입니다.
- 설정 범위: -20 ~ 19까지 총 40단계로 구성됩니다.
- 우선순위의 역설
- 값이 작을수록 우선순위가 높고, 값이 클수록 우선순위가 낮습니다.
- nice 할수록 양보를 많이해서 점수가 높아진다고 생각하면 됩니다.
- 권한 제한
- 일반 사용자는 nice 값을 높이는 것 (우선순위를 낮추는 것)만 가능합니다.
- 값을 낮추어 우선순위를 높이는 것은 루트(root) 권한이 있어야 가능합니다.
24. cron을 이용해서 해당 스크립트를 매주 1회씩 주기적으로 실행하려고 한다. ( ) 안에 들어갈 내용으로 알맞은 것은?
( ) /etc/backup.sh
① 1 1 1 * * (1분 1시 1일 매월 매요일 → 매월 1일 1시 1분)
② 1 1 * 1 * (1분 1시 매일 1월 매요일 → 1월 매일 1시 1분)
③ 1 1 * * 1 (1분 1시 매일 매월 월요일 → 매주 월요일 1시 1분)
④ * 1 1 1 * (매분 1시 1일 1월 매일 → 1월 1일 1시 매분)
설명)
| 필드 순서 | 의미 | 범위 |
| 1번 (첫 번째) | 분 (Minute) | 0 ~ 59 |
| 2번 (두 번째) | 시 (Hour) | 0 ~ 23 |
| 3번 (세 번째) | 일 (Day of Month) | 1 ~ 31 |
| 4번 (네 번째) | 월 (Month) | 1 ~ 12 |
| 5번 (다섯 번째) | 요일 (Day of Week) | 0 ~ 6 (0: 일요일, 1: 월요일, ... 6: 토요일) |
26. 다음 중 포어그라운드 프로세스를 종료하기 위해 사용하는 키 조합으로 알맞은 것은?
① [Ctrl] + [c] (인터럽트, SIGINT 시그널을 보내 포어그라운드 프로세스를 종료합니다.)
② [Ctrl] + [a] (커서를 해당 줄의 맨 앞으로 이동시킵니다.)
③ [Ctrl] + [z] (프로세스를 종료하지 않고 일시중지, Suspend 하여 백그라운드로 보냅니다.)
④ [Ctrl] + [d] (EOF, End of File를 의미하며, 현재 셸 세션을 로그아웃하거나 입력을 종료합니다.)
참고)
| 구분 | 명령어 | 설명 |
| 프로세스 제어 관련 | [Ctrl] + [\] | 강제 종료 시그널(SIGQUIT)을 보냅니다. Ctrl + c 로 종료되지 않는 프로세스를 끝낼 때 사용합니다. |
| [Ctrl] + [s] | 터미널의 출력을 일시 정지합니다. | |
| [Ctlr] + [q] | Ctrl + s 로 멈춘 출력을 다시 재개합니다. | |
| 편집 및 커서 이동 관련 | [Ctrl] +[e] | 커서를 해당 줄의 맨 뒤로 이동시킵니다. |
| [Ctrl] + [u] | 커서 위치부터 줄의 처음까지 모든 내용을 삭제합니다. | |
| [Ctrl] + [k] | 커서 위치부터 줄의 끝까지 모든 내용을 삭제합니다. | |
| [Ctrl] + [l] | 터미널 화면을 깨끗이 지웁니다. (clear 명령어와 동일) |
27. 다음 중 standalone 방식과 inetd 방식에 대한 비교 설명으로 알맞은 것은?
① inetd 방식이 standalone 방식보다 메모리 관리가 더 효율적이다.
② inetd 방식이 standalone 방식보다 관련 서비스 처리가 빠르다.
③ 웹과 같은 빈번한 요청이 들어오는 서비스는 inetd 방식이 적합하다.
④ 사용자가 많은 서비스는 standalone 방식보다 inetd 방식이 적합하다.
설명)
| 비교 항목 | Standalone 방식 | inetd (Super Daemon) 방식 |
| 작동 원리 | 서비스 데몬이 메모리에 상주하며 직접 요청을 처리합니다. | inetd 가 대기하다 요청이 올 때만 해당 서비스를 실행합니다. |
| 메모리 효율 | 항상 떠 있으므로 메모리를 계속 점유합니다. | 필요할 때만 메모리를 사용하므로 효율적입니다. |
| 응답 속도 | 이미 실행 중이므로 매우 빠릅니다. | 요청 시 데몬을 띄우는 과정이 있어 상대적으로 느립니다. |
| 적합한 서비스 | 웹(HTTP), DB 등 요청이 빈번하고 사용자가 많은 서비스 | Telnet, FTP 등 간헐적으로 발생하는 서비스 |
Standalone: 웹 서버(Apache, Nginx), DB 서버(MySQL)
inetd (xinetd): 보안상 이유로 현재는 xinetd를 더 많이 사용하며 Telnet, Finger 등이 대표적입니다.
28. 다음 중 사용자가 본인이 실행한 백그라운드 프로세스 목록을 확인하는 명령어로 가장 알맞은 것은?
① ps
② bg
③ jobs
④ exec
설명)
| 명령어 | 주요 기능 | 설명 |
| ps | 프로세스 상태 확인 | 시스템 전체에서 실행 중인 모든 프로세스의 상태를 보여줍니다. (현재 셸 외의 프로세스도 포함) |
| bg | 백그라운드 전환 | 정지된(Suspended) 작업을 백그라운드에서 실행 상태로 전환합니다. |
| jobs | 작업 목록 확인 | 현재 셸(세션)에서 사용자가 실행한 백그라운드 및 중지된 작업의 목록과 번호를 보여줍니다. |
| exec | 프로세스 대체 | 현재 을 종료하고 지정한 명령어로 프로세스를 교체합니다. |
29. 다음 보기의 시그널을 번호값이 낮은 순부터 높은 순으로 정렬했을 때 세 번째에 해당하는 시그널 이름으로 알맞은 것은?
① SIGTSTP
② SIGKILL
③ SIGINT
④ SIGTERM
설명)
| 번호 | 시그널 이름 | 설명 | 단축키 |
| 2 | SIGINT | 인터럽트 (프로세스 종료) | Ctrl + C |
| 9 | SIGKILL | 강제 종료 (가장 강력함) | - |
| 15 | SIGTERM | 종료 (기본값, 프로세스 정상 종료 권고) | - |
| 20 | SIGTSTP | 정지 (터미널에서 입력된 정지 시그널) | Ctrl + Z |
30. 다음 ( ) 안에 들어갈 내용을 알맞은 것은?
하나의 프로세스가 다른 프로세스를 실행하기 위한 시스템 호출 방법에는 (㉠)와 (㉡) 가 있다. (㉠)는 새로운 프로세스를 위해 메모리를 할당 받아 복사본 형태의 프로세스를 실행하는 형태로 기존의 프로세스는 그대로 실행되어 있다. 새롭게 생성된 프로세스는 원래의 프로세스랑 똑같은 코드를 기반으로 실행된다. (㉡)는 원래의 프로세스를 새로운 프로세스로 대체하는 형태로 호출한 프로세스의 메모리에 새로운 프로세스의 코드를 덮어 씌워 버린다.
① ㉠ exec, ㉡ fork
② ㉠ fork, ㉡ exec
③ ㉠ background, ㉡ foreground
④ ㉠ foreground, ㉡ background
설명)
| 구분 | 용어 | 주요 특징 | 실무 활용 예시 |
| 생성/호출 (System Call) | fork | 부모 프로세스의 메모리를 그대로 복사하여 새로운 자식 프로세스 생성 | 웹 서버가 요청을 받을 때 자식 프로세스를 생성하여 처리 |
| exec | 현재 프로세스를 새로운 프로세스로 대체. 프로세스 ID(PID)는 유지됨 | 에서 특정 명령어 (ex. ls) 를 실행할 때 내부적으로 사용 | |
| 실행 방식 (Execution) | foreground | 터미널의 제어권을 점유하여 작업이 끝날때까지 기다려야 함 | vi 편집기 사용, 실시간 로그 모니터링 (tail -f) |
| background | 터미널 제어권 없이 뒤에서 실행. 명령어 끝에 & 를 붙여 실행 | 대용량 백업 작업, 장시간 소요되는 데이터 분석 스크립트 |
31. 다음 설명에 해당하는 파일명으로 가장 알맞은 것은?
모든 사용자에게 적용되는 alias와 함수를 설정하려고 한다.
① /etc/.bashrc
② /etc/.bash_profile
③ /etc/bashrc
④ /etc/profile
설명)
| 파일 경로 | 적용 범위 | 주요 설정 내용 | 특징 |
| /etc/profile | 전체 사용자 | 환경변수 (PATH 등) | 로그인 시 딱 한 번만 실행됨 |
| /etc/bashrc | 전체 사용자 | alias, 함수(Function) | 새로운 셸(터미널)이 열릴 때마다 실행됨 |
| ~/.bash_profile | 개별 사용자 | 사용자별 환경변수 | 해당 사용자가 로그인할 때 실행됨 |
| ~/.bashrc | 개별 사용자 | 사용자별 alias, 함수 | 해당 사용자가 셸 열 때마다 실행됨 |
32. 다음 중 ( ) 안에 들어갈 명령의 결과로 알맞은 것은?
[ihduser@ihd ~] $ user=kaitman
[ihduser@ihd ~] $ echo "$user"
( )
① 아무것도 출력되지 않는다.
② $user
③ ihduser
④ kaitman
33. 다음 중 가장 최근에 실행한 명령을 재실행할 때 사용하는 명령으로 알맞은 것은?
① !0
② !1
③ !!
④ history - 1
설명)
| 명령어 | 의미 | 설명 |
| !! | 마지막 명령 실행 | 바로 직전에 입력한 명령어를 그대로 다시 실행합니다. (Bang Bang 이라고도 부릅니다.) |
| !1 | 1번 명령 실행 | history 목록에서 번호가 1번인 명령어를 찾아 실행합니다. |
| !0 | (오류) | 히스토리 번호는 보통 1번부터 시작하므로 일반적으로 사용되지 않습니다. |
| history - 1 | (잘못된 문법) | history 명령어는 저장된 전체 목록을 보여주며, 특정 개수를 보려면 history 5 와 가이 뒤에 숫자를 씁니다. |
34. 다음은 셸 변수를 선언한 후에 관련 내용을 확인하는 과정이다. ( ) 안에 들어갈 명령어로 알맞은 것은?
$ a=1
$ b=2
( )
① printenv
② unset
③ env
④ set
설명)
| 명령어 | 확인 가능한 범위 | 특징 |
| set | 셸 변수 + 환경 변수 | 사용자가 직접 선언한 로컬 변수 ($a, $b)와 시스템 함수까지 모두 출력합니다. |
| env | 환경 변수만 | export 를 통해 설정된 전역 변수(환경 변수)만 출력합니다. 로컬 셸 변수는 나오지 않습니다. |
| printenv | 환경 변수만 | env와 유사하게 환경 변수만 출력하며, 특정 변수 이름만 지정해서 볼 때 유용합니다. |
| unset | 변수 해제 | 설정된 변수를 삭제하는 명령어로 확인용 명령어가 아닙니다. |
35. 다음은 로그인 셸을 확인하는 과정이다. ( ) 안에 들어갈 명령어로 알맞은 것은?
[ihdman@www ~] # ( )
PID TTY TIME CMD
2472 pts/0 00:00:00 bash
2881 pts/0 00:00:00 ( )
① ps (현재 실행주인 프로세스의 상태를 보여주는 명령어 ps, Process Status)
② chsh
③ jobs
④ shells
설명)
ps (Process Status)
- 현재 실행중인 프로세스의 상태를 보여주는 명령어입니다.
- PID (Process ID): 프로세스에 부여된 고유 번호입니다.
- TTY (TeleTypewritter): 프로세스가 연결된 터미널 라인입니다.
- TIME: CPU를 사용한 누적 시간입니다.
- CMD: 실행 중인 명령어 이름입니다.
| 명령어 | 용어 설명 | 정답이 아닌 이유 |
| chsh | Change Sheel | 로그인 셸을 변경할 때 사용하는 명령어입니다. |
| jobs | Job Status | 현재 세션의 백그라운드/정지된 작업 목록을 보여주며, PID가 아닌 [1]+ 같은 작업 번호가 표시됩니다. |
| shells | (파일/경로) | 보통 /etc/shells 파일로 존재하며, 시스템에서 사용 가능한 셸의 종류를 나열할 뿐 현재 시행 중인 프로세스를 보여주지 않습니다. |
36. 다음 ( ) 안에 들어갈 파일명으로 알맞은 것은?
특정 사용자가 로그인 시에 부여되는 셸 정보는 ( ) 파일에서 확인할 수 있다.
① /etc/passwd
② /etc/shells
③ /etc/bashrc
④ /etc/profile
설명)
/etc/passwd
- 리눅스 시스템에 등록된 모든 사용자의 계정 정보를 담고 있습니다.
- 이 파일의 각 행은 7개의 필드로 구성되어 있고, 마지막 필드가 해당 사용자의 로그인 셸 정보입니다.
- ex) wukddang:x:1000:1000:Wukddang:/home/wukddang:/bin/bash
- 맨 뒤의 /bin/bash 가 사용자가 로그인할 때 부여되는 셸 입니다.
- ex) wukddang:x:1000:1000:Wukddang:/home/wukddang:/bin/bash
| 파일명 | 용도 및 특징 |
| /etc/shells | 현재 시스템에서 사용 가능한 셸의 종류를 보여줍니다. 특정 사용자에게 지정된 정보는 알 수 없습니다. |
| /etc/bashrc | 모든 사용자에게 적용되는 alias나 함수를 정의하는 설정 파일입니다. |
| /etc/profile | 모든 사용자에게 적용되는 환경 변수를 설정하는 파일입니다. |
참고)
/etc/passwd 필드 구조
| 순서 | 필드 이름 | 설명 |
| 1 | 사용자명 (Username) | 로그인 시 사용하는 계정 이름입니다. |
| 2 | 패스워드 (Password) | 과거에는 암호가 직접 들어갔으나, 현재는 보안상 x로 표시되며 실제 암호는 /etc/shadow 파일에 저장됩니다. |
| 3 | 사용자 ID (UID) | 시스템이 사용자를 식별하는 고유 번호입니다. (Root는 0, 일반 사용자는 보통 1000번 부터 시작) |
| 4 | 그룹 ID (GID) | 사용자가 속한 기본 그룹의 고유 번호입니다. |
| 5 | 주석 (Comment) | 사용자의 전체 이름이나 전화번호 등 추가 정보를 기록하는 필드입니다. (생략가능) |
| 6 | 홈 디렉터리 | 사용자가 로그인했을 때 처음 위치하게 되는 디렉터리 경로입니다. |
| 7 | 로그인 셸 | 사용자가 로그인 시 기본으로 부여받는 셸의 경로입니다. |
37. 다음은 ihdman 사용자가 변경 가능한 셸의 목록 정보를 확인하는 과정이다. ( ) 안에 들어갈 내용으로 알맞은 것은?
[ihdman@www ~ ] $ chsh ( )
① -l
② -u
③ -s
④ -c
설명)
chsh 명령어는 단순히 셸을 변경하는 것뿐만 아니라, 현재 시스템에서 바꿀 수 있는 셸들이 무엇이 있는지 확인하는 기능도 있습니다.
| 옵션 | 전체 명칭 (약어) | 기능 설명) |
| -l | --list-shells | 시스템에 설정된 /etc/shells 파일 내의 사용 가능한 셸 목록을 출력합니다. |
| -s | --shells | 사용자의 로그인 셸을 실제로 변경할 때 사용합니다. |
| -u | --help / usage | (참고) chsh에서 -u 는 공식 표준 옵션이 아니며, 보통 도움말(-h)이나 사용법 안내를 의미하는 경우가 많습니다. |
| -c | --comment | /etc/passwd 파일의 5번째 필드인 사용자 정보(주석)를 변경합니다. |
38. 다음 설명에 해당하는 셸로 알맞은 것은?
히스토리 기능, Alias 기능, 작업 제어 등과 같은 유용한 기능이 포함된 셸로 1978년에 버클리 대학의 빌 조이가 개발하였다.
① bourne shell
② csh
③ dash
④ bash
설명)
| 셸 이름 | 개발자 (연도) | 주요 특징 |
| sh (Bourne) | 스티븐 본 (1977) | 최초의 표준 셸. 기능은 단순하지만 가벼움 |
| csh (C Shell) | 빌 조이 (1978) | C 언어 기반 문법, 히스토리 및 작업 제어 기능 도입 |
| ksh (Korn) | 데이비드 콘 (1983) | Bourne 셸과 호환되며 C 셸의 유용한 기능을 포함 |
| bash (Bourne Again) | 브라이언 폭스 (1989) | 리눅스 표준 셸. GNU 프로젝트로 개발됨. |
39. 다음 설명에 해당하는 파일명으로 알맞은 것은?
현재 시스템에 마운트된 파일 시스템 정보를 저장하고 있는 파일로 실제 파일은 /proc/self/mounts 이다.
① /etc/fstab
② /etc/mtab
③ /etc/mounts (리눅스 표준 경로에 존재하지 않는 파일명)
④ /proc/partitions
설명)
| 파일 경로 | 주요 역할 | 특징 |
| /etc/fstab | 부팅 시 자동 마운트 설정 | 사용자가 직접 편집하는 설정 파일입니다. (정적 정보) |
| /etc/mtab | 현재 마운트된 정보 기록 | 커널에 의해 실시간으로 업데이트되는 파일입니다. (동적 정보) |
| /proc/partitions | 파티션 정보 확인 | 현재 시스템이 인식하고 있는 모든 디스크 파티션 목록을 보여줍니다. |
40. 다음 중 /etc/fstab 파일의 첫 번째 필드에 설정할 수 있는 값으로 틀린 것은?
① UUID
② LABEL
③ 마운트 포인트
④ 장치 파일명
설명)
/etc/fstab의 필드 구성
| 필드 순서 | 항목명 | 설명 및 예시 |
| 1번 필드 | 장치명 | 마운트할 대상 (장치 파일명, UUID, LABEL 등) |
| 2번 필드 | 마운트 포인트 | 장치가 연결될 디렉터리 위치 (예: /, /home) |
| 3번 필드 | 파일 시스템 타입 | 파일 시스템의 종류(예: ext4, xfs, nfs) |
| 4번 필드 | 옵션 | 마운트 시 적용할 옵션 (예: defaults, ro, rw) |
| 5번 필드 | 덤프 (dump) | 백업 여부 (0: 안 함, 1: 함) |
| 6번 필드 | 파일 체크 (fsck) | 부팅 시 무결성 검사 우선순위 (0, 1, 2) |

41. 다음은 ihduser 사용자의 홈 디렉터리가 차지하고 있는 디스크 용량을 확인하는 과정이다. ( ) 안에 들어갈 명령어로 알맞은 것은?
# ( )
56M /home/ihduser
① df -sh ~ihduser
② quota ihduser
③ du -sh ~ihduser
④ df -sh /home/ihduser
설명)
df 명령어도 -h 옵션이 있지만 -s 옵션은 보통 사용하지 않습니다.
df 뒤에 디렉터리 경로를 적으면 해당 디렉터리가 속한 파티션 전체 정보가 나옵니다.
- -s(summary): 하위 디렉터리 목록을 일일이 나열하지 않고, 전체 합계만 보여줍니다.
- -h (human-readable): 용량을 1024 단위로 계산하여, K, M, G 등 우리가 보기 편한 단위로 표시합니다.
du vs df
| 명령어 | 풀네임 | 주요 용도 | 비유 |
| du | Disk Usage | 특정 파일이나 디렉터리가 사용 중인 용량 확인 | 장바구니 안에 든 물건들의 무게를 재는 것 |
| df | Disk Free | 파일 시스템(파티션) 전체의 남은 용량/사용량 확인 | 냉장고 전체의 남은 공간이 얼마나 되는지 확인 하는 것 |




42. 다음 중 fdisk 작업 후에 변경된 파티션 정보를 저장하고 종료하는 명령어로 알맞은 것은?
① n
② w
③ x
④ q
설명)
fdisk
- 리눅스에서 디스크 파티션을 생성, 수정, 삭제하는 대화형 도구입니다.
| 명령어 | 풀네임 | 기능 설명 |
| n | new | 새로운 파티션을 추가합니다. |
| w | write | 지금까지 작업한 파티션 설정을 실제 디스크에 저장(쓰기)하고 종료합니다. |
| q | quit | 변경 내용을 저장하지 않고 그냥 종료합니다. (실수했을 때 유용함) |
| x | expert | 전문가용 모드로 진입하여 더 상세한 설정을 할 때 사용합니다. |
43. 다음 결과에 해당하는 명령어로 알맞은 것은?
[root@www ~] #
/dev/sda1: UUID="7e14520d-725e-424b-917e-ccdac407276f" TYPE="xfx"
/dev/sda2: UUID="06dc516e-68cd-401f-af90-d72576803484" TYPE="swap"
[root@www ~] #
① lsblk
② blkid
③ fdisk
④ uuid
설명)
blkid (Block ID)
- 시스템에 있는 블록 장치 (하드디스크, 파티션 등)의 속성을 출력하는 명령어입니다.
- 특히 각 파티션의 고유 식별자인 UUID와 파일 시스템 종류인 TYPE을 확인하는 데 가장 최적화된 도구입니다.
| 명령어 | 출력 특징 및 용도 |
| lsblk | "List Block devices"의 약자로, 장치들을 계층 구조(트리 형태)로 보여줍니다. (Disk > Partition) |
| fdisk | 파티션 설정을 위한 대화형 도구입니다. fdisk -l 을 사용하면 파티션 테이블 정보를 보여주지만, 위와 같이 UUID를 한 줄로 깔끔하게 보여주지는 않습니다. |
| uuid | 리눅스에서 새로운 UUID를 생성할 때 사용하는 명령어 (ex. uuidgen)는 있지만, 시스템 장치의 정보를 위와 같이 보여주는 표준 명령어 uuid 는 없습니다. |
44. 다음 그림에 해당하는 명령어로 알맞은 것은?

① quota
② edquota
③ repquota
④ xfs_quota
설명)
| 명령어 | 주요 기능 | 출력 화면의 특징 |
| quota | 개별 사용자의 사용량 확인 | 특정 사용자 한 명의 정보만 보여줍니다. |
| edquota | 쿼터 설정 편집 | 텍스트 편집기(vi 등)가 실행되어 설정을 수정하는 화면이 나옵니다. |
| repquota | 전체 사용자 보고서 출력 | 모든 사용자의 사용량, 제한치(soft/hard), 유예 기간(grace)을 표 형태로 요약해서 보여줍니다. |
| xfs_quota | XFS 파일 시스템용 쿼터 관리 | XFS 전용 관리 도구로, 대화형 셸이나 별도의 상세 옵션 결과가 나옵니다. |
45. 다음 중 설정된 umask 값이 0022일 경우 생성되는 파일의 허가권 값으로 알맞은 것은?
① -rw-r--r--
② -rw-rw-r--
③ -rwxr-xr-x
④ -rwxrwxr-x
설명)
umask 권한 계산법
- 리눅스에서 파일이나 디렉터리가 생성될 때의 권한은 최대 권한에서 umask 값을 빼서 결정됩니다.
- 가장 앞의 0은 '특수 권한'을 위한 자리입니다.
4자리 숫자의구조 (8진수 표기법)
| 첫 번째 자리 | 두 번째 자리 | 세 번째 자리 | 네 번째 자리 |
| 특수 권한 | 소유자 (User) | 그룹 (Group) | 기타 (Other) |
| SetUID(4), SetGID(2), Sticky Bit(1) | r(4), w(2), x(1) | r(4), w(2), x(1) | r(4), w(2), x(1) |
- 4755: SetUID가 설정됨 (파일 소유자 권한으로 실행)
- 2755: SetGID가 설정됨 (실행 시 그룹 권한으로 실행)
- 1755: Sticky Bit가 설정됨 (공유 디렉터리에서 본인 파일만 삭제 가능)
- 파일의 최대 권한
- 리눅스에서 새로 생성되는 파일은 보안상 실행 권한(x)을 제외한 666(rw-rw-rw-)을 최대 권한으로 가집니다.
- 계산 과정
- 최대 권한: 666
- umask 값: 022
- 666 - 022 = 644
- rw-r--r--
46. project 그룹에 속한 사용자들이 /project 디렉터리에서 파일 생성은 자유로우나 삭제는 본인의 생성한 파일만 가능하도록 설정하려고 한다. 또한 파일 생성 시 자동으로 그룹 소유권이 project로 부여되도록 설정하려고 한다. /project 디렉터리의 정보가 다음과 같을 때 관련 명령으로 알맞은 것은?
[root@www /] # ls -ld /project
drwxr-x---. 2 root project 6 Apr 4 19:32 /project
[root@www /] #
① chmod 1770 /project
② chmod 2770 /project
③ chmod 3770 /project
④ chmod 5770 /project
설명)
- 본인이 생성한 파일만 삭제 가능: Sticky Bit 가 담당합니다.
- 공용 디렉터리 내에서 다른 사람이 내 파일을 함부로 지우지 못하게 보호합니다. (예: /tmp 디렉터리)
- 생성 시 자동 그룹 소유권 부여: SetGID 가 담당합니다.
- 보통 새로 만든 파일은 만든 사람의 기본 그룹을 따라갑니다.
- 디렉터리에 이 권한이 있으면 디렉터리의 소유 그룹을 자동으로 상속받습니다.
상세 권한 계산
| 권한 항목 | 설정 값 | 설명 |
| 특수 권한 | 3 | SetGID (2) + Sticky Bit (1)의 합계 |
| 소유자 (root) | 7 | rwx (읽기, 쓰기, 실행) 권한 |
| 그룹 (project) | 7 | rwx (읽기, 쓰기, 실행) 권한 |
| 기타사용자 | 0 | 아무런 권한이 없음 |
47. 다음 명령의 결과로 설정되는 lin.txt 파일의 허가권 값으로 알맞은 것은?
[posein@www ~] $ ls -l lin.txt
-rw-rw-r--. 1 posein posein 81 Jun 28 17:09 lin.txt
[posein@www ~] $ chmod g=r lin.txt
① ----r-----
② -r--r--r--
③ -rw-r--r--
④ -rw-rw----
설명)
기존 권한: -rw-rw-r--
chmod g=r lin.txt
- g: 그룹(Group)을 대상으로 합니다.
- =: 기존 권한을 무시하고 지정한 권한으로 완전히 대체합니다.
- r: 읽기 권한만 부여합니다. (기존의 w 권한은 사라지게 됩니다.)
참고)
- g=r: 그룹 권한을 오직 r 로만 세팅합니다.
- g+r: 기존 그룹 권한에 r을 추가합니다.
- g-r: 기존 그룹 권한에서 r 을 제거합니다.
48. 다음 중 파일이나 디렉터리의 소유자를 변경하는 명령어로 알맞은 것은?
① ls
② chgrp
③ chown
④ umask
설명)
| 명령어 | 풀네임 | 주요 기능 | 실무 활용 예시 |
| ls | List | 디렉터리의 파일 목록을 나열합니다. | ls -l 을 사용해 파일의 상세 권한과 소유자를 확인합니다. |
| chgrp | Change Group | 파일이나 디렉터리의 그룹 소유권만 변경합니다. | chgrp project lin.txt (그룹을 project로 변경) |
| chown | Change Owner | 파일의 소유자와 그룹을 모두 변경할 수 있습니다. | chown user:group file (소유자와 그룹을 동시에 변경) |
| umask | User Mask | 파일/디렉터리 생성 시 기본 권한을 결정합니다. | umask 022 (새 파일 권한을 644로 설정) |
49. 다음 중 클라우드 서비스에서 이용자의 설정이 많은 순서로 나열된 것은?
① SaaS > PaaS > IaaS
② PaaS > SaaS > IaaS
③ IaaS > PaaS > SaaS
④ IaaS > SaaS > PaaS
50. 다음 설명에 해당하는 명칭으로 알맞은 것은?
빅데이터 환경에서 데이터 분석 기술을 통해 분석된 데이터의 의미와 가치를 시각적으로 표현할 때 유용한 프로그래밍 언어이다.
① Hadoop
② NoSQL
③ R
④ Cassandra
설명)
| 명칭 | 주요 역할 | 특징 및 설명 |
| Hadoop | 분산 처리 프레임워크 | 여러 대의 컴퓨터(클러스터)를 연결해 거대한데이터를 분산 저장(HDFS)하고 처리(MapReduce)하는 오픈소스 소프트웨어 입니다. |
| NoSQL | 비관계형 데이터베이스 | 'Not Only SQL'의 약자로, 기존 RDBMS(Oracle, MySQL 등)와 달리 고정된 스키마가 없어 대규모의 비정형 데이터를 유연하고 빠르게 처리하는 데 적합합니다. |
| Cassandra | 분산형 NoSQL DB | 페이스북에서 개발된 NoSQL 데이터베이스 중 하나입니다. 대용량 데이터 처리에 뛰어나며, 서버 한두 대가 고장나도 시스템이 멈추지 않는 높은 가용성이 특징입니다. |
51. 다음 중 CPU 반가상화를 지원하는 가상화 기술로 알맞은 것은?
① Xen
② KVM
③ Docker
④ VirtualBox
설명)
주요 가상화 기술 비교
| 기술 명칭 | 가상화 방식 | 주요 특징 |
| Xen | 반가상화 (Para-Visualization) | 게스트 OS의 커널을 수정하여 하이퍼바이저와 통신하므로 성능이 뛰어납니다. (전가상화도 지원) |
| KVM | 전가상화 (Full Visualization) | 리눅스 커널 자체를 하이퍼바이저로 사용하며, CPU의 하드웨어 가상화 기술 (Intel-VT, AMD-V)을 활용합니다 |
| VirtualBox | 전가상화 (Full Virtualization) | 일반 사용자용 데스크톱 가상화 소프트웨어로, 다양한 OS를 쉽게 설치할 수 있습니다. |
| Docker | 컨테이너 (Container) | 하이퍼바이저 없이 커널을 공유하며 프로세스를 격리하는 방식입니다. (가상머신보다 훨씬 가볍습니다.) |
52. 다음 상황에 적합한 클러스터링 기술로 알맞은 것은?
다수의 웹 서버를 운영하는 환경으로 하나의 로드 밸런서 시스템으로 부하를 분산하는 중이다.
① 고계산용 클러스터
② 베어울프 클러스터
③ 고가용성 클러스터
④ HPC 클러스터
설명)
클러스터링 기술 유형 비교
| 구분 | 명칭 | 주요 목적 및 특징 | 비유 |
| 고계산용 / HPC | HPC/Beowulf | 슈퍼컴퓨터처럼 복잡한 수치 계산을 여러 대가 나누어 처리 | 어려운 수학 문제를 100명이 나눠 푸는 것 |
| 고가용성 | HA (High Availability) | 서버 한 대가 고장 나도 서비스가 중단되지 않게 유지 | 예비 타이어를 항상 싣고 다니는 자동차 |
| 부하분산 | LVS / Load Balancing | 사용자 요청(부하)을 여러 서버로 배분하여 성능 유지 | 계산대가 여러 개인 마 |
53. 다음 중 SYN Flooding 공격과 같은 네트워크 상태 정보를 확인하는 명령으로 알맞은 것은?
① ip
② arp
③ route
④ netstat
설명)
SYN Flooding
- 서버에 접속 요청(SYN)을 잔뜩 보내고 다음 단계(ACK)를 진행하지 않아 서버의 자원을 고갈시키는 공격입니다.
- 이때 서버의 연결 상태는 SYN_RECV로 남게 됩니다.
| 명령어 | 주요 기능 | SYN Flooding 확인 시 역할 |
| netstat | 네트워크 연결 상태 확인 | SYN_RECV 상태의 연결이 비정상적으로 많은지 확인할 수 있는 유일한 도구입니다. |
| ip | 인터페이스 및 라우팅 관리 | IP 주소 설정이나 링크 상태를 확인하지만, 개별 연결 세션 (Port 등)의 상세 상태는 보여주지 않습니다. |
| arp | IP-MAC 주소 매핑 확인 | 로컬 네트워크 내의 물리적 주소를 확인할 때 쓰이며, 외부 공격인 SYN Flooding 과는 무관합니다. |
| route | 라우팅 테이블 관리 | 패킷이 나가는 경로를 설정하고 확인합니다. |
54. 다음 설명에 해당하는 파일명으로 알맞은 것은?
kait 라고 입력하면 ihd.or.kr 도메인이 자동으로 덧붙여지도록 특정 도메인을 등록해서 이름 호출 시 단축 하려고 한다. 예를 들면 kait를 호출하면 kait.ihd.or.kr로 접속되도록 한다.
① /etc/hosts
② /etc/resolv.conf
③ /etc/sysconfig/network
④ /etc/sysconfig/network-scripts
설명)
/etc/resolv.conf
- 네임서버 주소뿐만 아니라, 도메인 생략 시 자동으로 뒤에 붙여줄 도메인을 지정하는 search 설정이 들어갑니다.
- 파일 안에 search ihd.or.kr 이라고 적혀있으면 사용자가 kait 만 입력했을 때 시스템이 자동으로 kait.ihd.or.kr 로 변환하여 DNS 서버에 질의합니다.
- 내부망에 서버가 많을 때 db1, web1 처럼 짧은 이름으로 서로 통신할 수 있게 도와줍니다.
| 파일명 | 주요 역할 | 특징 |
| /etc/hosts | IP와 호스트명 매핑 | DNS 서버를 거치지 않고 특정 이름의 IP를 수동으로 지정할 때 씁니다. |
| /etc/sysconfig/network | 네트워크 전체 설정 | 호스트명(Hostname)이나 게이트웨이 주소 등 시스템 전체 네트워크 활성화 여부를 결정합니다. |
| /etc/sysconfig/network-scripts | 인터페이스별 상세 설정 | ifcfg-eth0 같은 파일들이 들어있으며, 개별 랜카드의 IP 주소나 넷마스크 등을 설정합니다. |
55. 다음 설정을 확인할 수 있는 파일명으로 알맞은 것은?
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.5.13 www.ihd.or.kr
① /etc/hosts
② /etc/resolv.conf
③ /etc/sysconfig/network
④ /etc/sysconfig/network-scripts
설명)
리눅스 주요 네트워크 설정 파일 비교
| 파일 및 디렉터리 경로 | 주요 역할 | 실제 내부 설정 예시 (Content) |
| /etc/hosts | 로컬 호스트명 관리 | 127.0.0.1 localhost |
| IP 주소를 특정 이름에 강제로 매핑 (DNS 보다 우선순위 높음) |
192.168.5.13 www.ihd.or.kr | |
| /etc/resolv.conf | DNS 서버 및 탐색 설정 | nameserver 8.8.8.8 |
| 이름 해석을 요청할 네임서버 주소와 자동 도메인 완성(search) 설정 | search ihd.or.kr | |
| /etc/sysconfig/network | 시스템 전체 네트워크 설정 | NETWORKING=yes |
| 네트워크 활성화 여부와 서버 전체의 호스트명 설정 | HOSTNAME=wukddang-server | |
| /etc/sysconfig/network-scripts | 인터페이스 상세 설정 (디렉터리) | DEVICE=eth0 |
| 개별 랜카드(eth0 등)의 고정 IP, 할당 방식 등을 설정하는 파일들이 위치 | BOOTPROTO=static IPADDR=192.168.5.13 |
참고)
Rocky Linux 에서는 /etc/sysconfig/network-scripts 대신 /etc/NetworkManager/system-connections/ 경로의 .nmconnection 파일을 사용하는 것으로 권장 방식이 바뀌고 있습니다.
주요 별칭의 의미
| 이름 | 의미 및 용도 IPv4 환경에서 명확하게 자기 자신임을 나타내기 위한 별칭입니다. |
| localhost | 시스템 자기 자신을 가리키는 가장 대표적인 이름입니다. |
| localhost.localdomain | 호스트 이름과 도메인 이름을 합친 형태(FQDN)를 흉내 낸 이름입니다. 일부 네트워크 프로그램은 점(.)이 포함된 형식을 요구하기도 해서 등록해 둡니다. |
| localhost4 / localhost4.localdomain | IPv4 환경에서 명확하게 자기 자신임을 나타내기 위한 별칭입니다. |
| localhost4 / localhost4.localdomain | IPv6 환경에서 명확하게 자기 자신임을 나타내기 위한 별칭입니다. |
56. 다음 중 네트워크 카드에 물리적으로 케이블이 연결되었는지를 점검할 때 사용하는 명령어로 알맞은 것은?
① ifconfig
② ss
③ netstat
④ mii-tool
설명)
MII (Media Independent Interface)
- 물리적 매체(케이블) 사이의 연결을 관리하는 표준입니다.
| 명령어 | 주요 기능 | 물리적 연결(Link) 확인 여부 |
| mii-tool | 네트워크 인터페이스의 물리적 상태 확인 | 가능. "link on" 또는 "no link"로 케이블 연결 여부를 직접 보여줍니다. |
| ifconfig | 인터페이스 설정 및 활성화 상태 확인 | IP 주소나 전송 패킷 수는 보여주지만, 물리적 케이블의 물리적 단선 여부를 직접 체크하기엔 부족합니다. |
| ss | 소켓(Socket) 통신 상태 확인 | TCP/UDP 연결 세션 정보 등 네트워크 상위 계층 정보를 보여줍니다. |
| netstat | 네트워크 연결 및 라우팅 확인 | 연결된포트나 서비스 상태를 확인하는 용도입니다. |
57. 다음 중 시스템에 설정된 게이트웨이 주소값을 확인하는 명령어로 틀린 것은?
① ip
② route
③ netstat
④ ethtool
설명)
| 명령어 | 확인 가능한 핵심 정보 | 게이트웨이(L3) 확인 여부 |
| ip | IP 주소, 라우팅 테이블, 인접 장치 등 | 가능 (ip route 명령으로 확인) |
| route | 시스템의 IP 라우팅 테이블 | 가능 (가장 전통적인 확인 방법) |
| netstat | 네트워크 연결, 라우팅 테이블, 인터페이스 통계 | 가능 (netstat -r 명령으로 확인) |
| ethtool | 물리적 링크 상태, 이더넷 카드 하드웨어 설정 | 불가능 (L1~L2 수준의 정보만 제공) |
58. 다음 설명과 같은 경우에 사용가능한 IP 주소의 개수로 알맞은 것은?
C 클래스 네트워크 주소 대역 1개를 할당받은 상태이고, 여러 부서가 존재하는 관계로 서브넷 마스크 값은 255.255.255.192로 설정할 예정이다. 또한 인터넷 사용 없이 내부 통신망용으로 구축할 예정이다.
① 252
② 250
③ 248
④ 244
설명)
1. 전체 IP 개수 확인
- C 클래스 대역 1개는 총 256개의 주소를 가집니다. (2^8)
2. 서브넷 분할 개수 확인
- 서브넷 마스크가 255.255.255.192 이므로, 마지막 8비트 중 2비트 (11000000)를 네트워크 분할에 사용합니다.
- 네트워크 영역으로 빌려온 앞의 2비트로 만들 수 있는 조합은 11,10, 01, 00 총 4가지 (2^2)
3. 네트워크당 가용 IP 계산
- 하나의 서브넷은 64개의 주소를 가집니다. (2^6)
- 여기서 각 서브넷마다 네트워크 주소(1개) 와 브로드캐스트 주소(1개), 총 2개를 사용할 수 없습니다.
- 따라서 한 서브넷당 실사용 가능 IP는 62개 입니다. (64 - 2 = 62)
4. 전체 사용 가능 IP 합계
- 62 * 4 = 248
59. IP 주소 및 서브넷 마스크값이 다음과 같을 때 설정되는 브로드캐스트 주소값으로 알맞은 것은?
192.168.5.189/26
① 192.168.5.190
② 192.168.5.191
③ 192.168.5.192
④ 192.168.5.193
설명)
1. 서브넷 마스크 분석 (/26)
- 앞에서부터 26비트가 1이라는 뜻입니다.
- 마지막 8비트 중 앞의 2비트(11000000)를 네트워크 분할에 사용하여, 서브넷마스크는 255.255.255.192 가 됩니다.
- 이 경우 네트워크는 64개씩 쪼개집니다.
2. 네트워크 범위(구간) 파악
- 1구간: 0 ~ 63
- 2구간: 64 ~ 127
- 3구간:128 ~ 191
- 4구간: 192 ~ 255
3. 대상 주소가 속한 구간 찾기
- 192.168.5.189는 3구간에 속해있습니다.
4. 브로드캐스트 주소 결정
- 네트워크 주소: 해당 구간의 가장 첫 번째 주소 (128)
- 브로드캐스트 주소: 해당 구간의 가장 마지막 주소 (191)
60. 다음 중 로컬 시스템에 있는 파일을 FTP 서버에 업로드하는 경우에 사용하는 명령어로 알맞은 것은?
① get
② put
③ recv
④ hash
설명)
| 명령어 | 기능 (Action) | 상세 설명 |
| put | 업로드 (Upload) | 로컬 시스템의 파일을 리모트(FTP 서버)로 전송합니다. |
| get | 다운로드 (Download) | 리모트(FTP 서버)의 파일을 로컬 시스템으로 가져옵니다. |
| mput / mget | 다중 전송 | 여러 개의 파일(multiple)을 한꺼번에 올리거나 가져올 때 사용합니다. |
| recv | 다운로드 | get 과 동일한 기능을 수행합니다. |
| hash | 전송 표시 | 파일 전송 시 진행 상황을 # 기호로 화면에 표시해 줍니다. |
61. 다음은 원격지의 IP 주소가 192.168.5.13번인 ssh 서버에 kaitman 계정으로 변경해서 접속하는과정이다. ( ) 안에 들어갈 내용으로 알맞은 것은?
[ihd@www ~] # ssh ( )
① kaitman@192.168.5.13
② -n kaitman 192.168.5.13
③ -p kaitman 192.168.5.13
④ -U kaitman 192.168.5.13
설명)
SSH 접속 명령어 구성
1. 계정명@IP주소 방식
- 가장 직관적이고 널리 쓰이는 방식입니다.
- ssh 계정명@호스트주소(IP)
- ssh kaitman@192.168.5.13
2.-l 옵션 사용 방식
- -l (Login name) 옵션을 사용하여계정을 명시합니다.
- ssh -l 계정명 호스트주소(IP)
- ssh -l kaitman 192.168.5.13
3. -p (Port)
- 포트번호를 지정할 때 사용합니다.
- SSH 기본 포트인 22번이아닌 다른 포트를 쓸 때 필수입니다.
- ssh -p 2222 kaitman@192.168.5.13
62. 다음은 원격지 텔넷 서버에 계정을 변경해서 접속하는 과정이다. ( ) 안에 들어갈 옵션으로 알맞은 것은?
[ihd@www ~] # telnet ( ) kaitman 192.168.5.13
① -u
② -n
③ -p
④ -l
63. 다음 중 메일 서버 간의 메시지 교환에 사용되는 프로토콜로 알맞은 것은?
① SNMP
② SMTP
③ IMAP
④ POP3
설명)
SMTP (Simple Mail Transfer Protocol)
- 메일을 보낼 때 사용하는 대표적인 프로토콜입니다.
| 프로토콜 | 풀네임 및 용도 | 주요 특징 |
| SNMP | Simple Network Management Protocol | 서버, 스위치, 라우터 등 네트워크 장비의 상태를 모니터링하고 관리할 때 사용합니다. CPU 사용량이나 트래픽 상태 등을 수집합니다. |
| IMAP | Internet Message Access Protocol | 메일 서버에 접속하여 메일을 확인할 때 사용합니다. 서버와 동기화되는 방식이라 여러 기기(폰, PC)에서 동일한 메일 상태를 유지하기 쉽습니다. |
| POP3 | Post Office Protocol Version 3 | 메일 서버로부터 메일을 내 컴퓨터로 내려받는 방식입니다. 한 번 가져오면 보통 서버에서 메일이 삭제되므로 동기화 기능은 약하지만 속도가 빠를 수 있습니다. |
64. 다음 설명에 해당하는 인터넷 서비스로 알맞은 것은?
리눅스를 비롯한 유닉스 계열 운영체제와 윈도우 운영체제 간의 자료 및 하드웨어 공유를 지원한다.
① NFS
② SAMBA
③ Gopher
④ FTP
설명)
주요파일 공유 서비스 비교
| 서비스 명칭 | 주요 특징 및 용도 | 지원 운영체제 |
| SAMBA | 윈도우의 SMB/CIFS 프로토콜을 리눅스에서 구현한 서비스입니다. 윈도우와 리눅스 간의 공유에 최적화되어 있습니다. | 리눅스 <-> 윈도우 |
| NFS | Network File System의 약자로, 주로 리눅스(유닉스) 서버들끼리 디렉터리를 공유할 때 사용합니다. | 리눅스 <-> 리눅스 |
| FTP | 파일을 전송하기 위한 표준 프로토콜입니다. 공유보다는 '업로드/다운로드'라는 전송 개념에 더 가깝습니다. | 범용 (모든 OS) |
| Gopher | WWW가 나오기 전 사용되던 아주 오래된 정보 검색 서비스로, 현재는 거의 사용되지 않습니다. | - |
65. 다음 중 X 윈도가 설치되지 않은 환경의 콘솔 창에서 사용할 수 있는 웹 브라우저로 알맞은 것은?
① links
② firefox
③ opera
④ safari
설명)
주요 웹 브라우저 비교
| 브라우저 | 구동 환경 | 특징 |
| links | CLI | X 윈도가 없는 환경에서도 실행 가능하며, 텍스트 위주로 웹을 보여줍니다. |
| firefox | GUI | 리눅스(X 윈도), 윈도우 등에서 쓰이는 대표적인 그래픽 브라우저 입니다. |
| opera | GUI | 다양한 플랫폼을 지원하는 그래픽 기반 웹 브라우저입니다. |
| safari | GUI | 애플(macOS, iOS)환경에서 주로 쓰이는 그래픽 브라우저 입니다. |
66. 다음 설명에 해당하는 국제기구로 알맞은 것은?
IP 주소, 인터넷 도메인 이름, 프로토콜의 범주와 포트할당 등의 업무를 담당한다.
① ICANN
② IEEE
③ TIA
④ ISO
설명)
주요 국제기구 상세 설명
| 기구 명칭 | 주요 역할 및 특징 |
| ICANN | Internet Corporation for Assigned Names and Numers 의 약자로, 전 세계의 IP 주소 할당, 도메인 이름 관리, 포트 번호 할당 등을 총괄하는 비영리 기구입니다. |
| IEEE | Institute of Electrical and Electronics Engineers 의 약자로, 전기·전자 및 컴퓨터 공학 분야의 표준을 만듭니다. Wi-Fi(802.11)나 이더넷(802.3) 표준이 여기서 나옵니다. |
| TIA | Telecommunications Industry Association 의 약자로, 통신 산업 표준을 제정합니다. 주로 광케이블이나 통신 장비의 물리적 규격을 다룹니다. |
| ISO | International Organization for Standardization 의 약자로, 분야를 막론하고 국제 표준을 만듭니다. OSI 7계층 참조 모델을 정의했습니다. |
67. 다음 중 IPv4의 C 클래스 네트워크 주소 대역으로 알맞은 것은?
① 191.0.0.0 ~ 223.255.255.255
② 192.0.0.0 ~ 223.255.255.255
③ 191.0.0.0 ~ 224.255.255.255
④ 192.0.0.0 ~ 224.255.255.255
설명)
IPv4 클래스별 범위 정리
| 클래스 | 시작 비트 | 10진수 범위 | 첫 번째 옥텟 범위 | 주요 용도 |
| A 클래스 | 0 xxxxxxx | 0 ~ 127 | 0.0.0.0 ~ 127.255.255.255 | 대규모 네트워크 |
| B 클래스 | 10 xxxxxx | 128 ~ 191 | 128.0.0.0 ~ 191.255.255.255 | 중규모 네트워크 |
| C 클래스 | 110 xxxxx | 192 ~ 223 | 192.0.0.0 ~ 223.255.255.255 | 소규모 네트워크 |
| D 클래스 | 1110 xxxx | 224 ~ 239 | 224.0.0.0 ~ 239.255.255.255 | 멀티캐스트용 |
| E 클래스 | 1111 xxxx | 240 ~ 255 | 240.0.0.0 ~ 255.255.255.255 | 연구 및 실험용 |
68. 다음 중 네트워크 프로토콜에 할당된 포트 번호를 확인할 수 있는 파일명으로 알맞은 것은?
① /etc/protocol
② /etc/protocols
③ /etc/service
④ /etc/services
설명)
| 파일 경로 | 주요 내용 및 역할 | 예시 데이터 |
| /etc/services | 서비스 이름과 포트 번호 매핑 정보가 들어 있습니다. | ssh 22/tcp, http 80/tcp |
| /etc/protocols | IP 프로토콜 번호 (ICMP=1, TCP=6 등) 정보가 정의되어 있습니다. | tcp 6 TCP, udp 17 UDP |
69. 다음 중 OSI 모델의 전송 계층에서 사용되는 프로토콜 데이터 단위로 알맞은 것은?
① Packet
② Segment
③ frame
④ bit
설명)
| 계층 (Layer) | 데이터 단위 (PDU) | 특징 및 비유 |
| 5 ~ 7계층 (응용 ~ 세션) | Data / Message | 사용자가 보는 실제 콘텐츠 |
| 4계층 (전송 - Transport) | Segment | 데이터를 전송하기 좋게 자른 조각 (TCP 등) |
| 3계층 (네트워크 - Network) | Packet | IP 주소가 붙어 경로가 정해진 상태 |
| 2계층 (데이터링크 - Data Link) | Frame | 물리적 주소 (MAC)가 붙어 실제 전달되는 상태 |
| 1계층 (물리 - Physical) | Bit | 0과 1의 전기적 신호 |
70. 다음설명에 해당하는 네트워크 프로토콜로 알맞은 것은?
소프트웨어적으로 할당된 논리 주소인 IP 주소를 실제 물리 주소인 MAC 주소로 변환하는 역할을 수행한다.
① IP
② ICMP
③ ARP
④ UDP
설명)
주요 프로토콜 상세 설명
| 프로토콜 | 풀네임 및 역할 | 핵심 키워드 |
| ARP | Address Resolution Protocol | IP -> MAC 주소로 변환 |
| IP | Internet Protocol | 패킷을 목적지 주소까지 전달하는 역할 (3계층) |
| ICMP | Internet Control Message Protocol | 네트워크 상태 확인 및 오류 보고 (ping 에서 사용) |
| UDP | User Datagram Protocol | 비연결형 전송 서비스로 속도가 빠름 (4계층) |
71. 다음 그림에 해당하는 네트워크 케이블로 알맞은 것은?

① STP
② UTP
③ BNC
④ 광케이블
72. 다음 중 인터네트워킹 장비를 OSI 모델의 하위 계층부터 나열한 순서로 알맞은 것은?
① Router-Bridge-Repeater
② Router-Repeater-Bridge
③ Repeater-Bridge-Router
④ Bridge-Repeater-Router
설명)
1. Repeater (리피터) - 1계층 (물리 계층)
- 단순히 전기 신호를 증폭하여 전달하는 역할만 합니다.
- 주소를 읽거나 판단하는 기능이 없는 가장 하위 장비입니다.
2. Bridge (브릿지) - 2계층 (데이터 링크 계층)
- MAC 주소를 보고 패킷을 전달할지 말지 결정합니다.
- 요즘 흔히 쓰는 스위치(Switch)가 이 브릿지의 기능을 확장한 장비입니다.
3. Router (라우터) - 3계층 (네트워크 계층)
- IP 주소를 보고 최적의 경로를 찾아 패킷을 전송(라우팅)합니다.
- 서로 다른 네트워크를 연결하는 핵심 장비입니다.
73. 다음 중 이미지 뷰어 프로그램으로 가장 거리가 먼 것은?
① totem
② ImageMagicK
③ Eog
④ Gimp
설명)
프로그램별 용도 분석
| 프로그램명 | 주요용도 | 특징 |
| totem | 동영상 재생 (멀티미디어 플레이어) | 그놈(GNOME) 데스크탑의 기본 동영상 및 음악 재생기입니다. 이미지 뷰어와는 성격이 다릅니다. |
| ImageMagick | 이미지 변환 및 편집 | 명령줄(CLI)에서 이미지를 자르고, 변환하고, 생성하는 강력한 도구 모음입니다. |
| Eog | 이미지 뷰어 | Eye of GNOME의 약자로, 그놈 데스크탑의 공식 기본 이미지 뷰어입니다. |
| Gimp | 이미지 편집 및 제작 | 리눅스계의 '포토샵'이라 불리는 전문적인 비트맵 이미지 편집기입니다. |
74. 다음 중 사용자가 X 윈도 실행을 할 경우 관련 키 정보를 저장하는 파일로 알맞은 것은?
① .Xsession
② .Xsetup
③ .Xinitrc
④ .Xauthority
설명)
| 파일명 | 주요 역할 및 특징 |
| .Xauthority | X 윈도 접속 인증 키(Cookie)를 저장합니다. 다른 사용자가 내 화면을 마음대로 제어하지 못하도록 보안 토큰 역할을 수행합니다. |
| .Xinitrc | startx 명령을 통해 X 윈도를 시작할 때, 함께 실행할 윈도 매니저나 응용 프로그램을 정의하는 스크립트 파일입니다. |
| .Xsession | 그래픽 로그인(GDM, KDM 등)을 통해 세션을 시작할 때 사용되는 설정 파일입니다. |
| .Xsetup | X 윈도 디스플레이 매니저가 실행될 때 초기 설정을 위해 사용되는 스크립트입니다. |
75. 다음 중 X 클라이언트를 원격지로 전송하기 위해 변경하는 환경변수로 알맞은 것은?
① VISUAL
② DISPLAY
③ TERM
④ XTERM
설명)
환경변수별 역할 분석
| 환경변수 | 주요 역할 및 특징 |
| DISPLAY | X 클라이언트 프로그램이 화면을 출력할 디스플레이 장치의 위치를 지정합니다. |
| VISUAL | 사용자가 기본으로 사용할 시각적 편집기를 지정할 때 쓰입니다. (예: vi, vim, emacs) |
| TERM | 현재 사용 중인 터미널의 종류(예: xterm, vt100,linux)를 시스템에 알려줍니다. |
| XTERM | 환경변수가 아니라, X 윈도에서 실행되는 기본 터미널 에뮬레이터 프로그램의 이름입니다. |
76. 다음 중 X 서버에서 IP 주소가 192.168.12.22번인 X 클라이언트를 허가하는 명령으로 알맞은 것은?
① xhost 192.168.12.22
② xhost * 192.168.12.22
③ xhost - 192.168.12.22
④ xhostadd 192.168.12.22
설명)
xhost
- 호스트(Host) 이름을 기준으로 X 서버에 대한 접근 권한을 제어하는 명령어입니다.
- 접속 허가 (+)
- xhost [+/-] [IP주소 또는 호스트명]
- xhost + 192.168.12.22 또는 xhost 192.168.12.22 라고 입력하면 해당 IP의 클라이언트가 내 화면을 사용할 수 있게 됩니다.
- 접속 차단 (-)
- xhost - 192.168.12.22 라고 입력하면 해당 IP의 접근 권한을 회수합니다.
- 모든 접속 허용
- xhost + 라고만 입력하면 보안상 위험하지만, 모든 호스트의 접근을 허용합니다.
- 접속 허가 (+)
77. 다음 중 윈도 매니저 종류로 틀린 것은?
① Metacity
② Enlightenment
③ Window Maker
④ XFce
설명)
주요 개념 차이 분석
| 구분 | 역할 및 특징 | 종류 |
| 윈도 매니저 | 창의 배치, 크기 조절, 테두리 등 창의 외형과 동작만 관리하는 최소한의 도구입니다. | Metacity, Enlightenment, Window Maker, Mutter, Kwin 등 |
| 데스크톱 환경 | 윈도 매니저를 포함하여 아이콘, 도구 모음, 파일 관리자 등 사용자 환경 전체를 제공하는 패키지입니다. | XFce, GNOME, KDE, MATE |
78. 다음 중 KDE에 대한 설명으로 틀린 것은?
① Metacity 라는 윈도 매니저를 사용한다.
② 데스크톱 환경의 일종이다.
③ Qt 라이브러리를 기반으로 만들어졌다.
④ 리눅스뿐만 아니라 FreeBSD, Solaris, OS X 등도 지원한다.
설명)
KDE vs GNOME 비교 분석
| 항목 | KDE (K Desktop Environment) | GNOME |
| 윈도 매니저 | KWin | Metacity,Mutter 등 |
| 기반 라이브러리 | Qt | GTK+ |
| 특징 | 화려한 그래픽, 윈도우와 유사한 인터페이스 | 직관적이고 단순한 인터페이스 |
| 지원 운영체제 | 리눅스, FreeBSD,Solaris, macOS 등 | 리눅스, Solaris 등 대부분 유닉스 계열 |
79. 다음 중 사용자 로그인 및 세션 관리 역할을 수행하는 X 윈도의 구성요소로 알맞은 것은?
① 디스플레이 매니저
② 데스크톱 환경
③ 윈도 매니저
④ 유저 인터페이스
설명)
X 윈도 구성요소 및 역할 분석
| 구성요소 | 주요 역할 및 특징 |
| 디스플레이 매니저 | 사용자 로그인 화면을 제공하고, 인증 성공 시 세션 관리 및 X 서버 실행을 담당합니다. |
| 데스크톱 환경 | 아이콘, 도구 모음, 파일 관리자 등 사용자에게 통합된 작업 환경을 제공합니다. |
| 윈도 매니저 | 창의 테두리, 크기 조절, 배치 등 창의 외형적인 동작을 제어합니다. |
| 유저 인터페이스 | 사용자와 컴퓨터가 상호작용하는 방식(GUI, CLI)을 통칭하는 광범위한 용어입니다. |
80. 다음은 시스템 부팅 시 X 윈도가 실행되도록 설정하는 과정이다. ( ) 안에 들어갈 내용으로 알맞은 것은?
# systemctl ( ㉠ ) ( ㉡ )
① ㉠ set-default, ㉡ multi-user
② ㉠ set-default, ㉡ graphical
③ ㉠ get-default, ㉡ multi-user.taret
④ ㉠ get-default, ㉡ graphical.target
설명)
리눅스 (CentOS, Rocky Linux 등)에서는 부팅 시 도달할 최종 상태를 "Target" 이라고부릅니다.
1. set-default
- 시스템이 부팅될 때 기본적으로 적용할 모드를 설정(set)하겠다는 의미입니다.
- 반대로 현재 설정을 확인하고 싶을 때는 get-default 를 사용합니다.
2. graphical / graphical.target
- X 윈도를 포함한 그래픽 환경으로 부팅하고 싶을 때 사용하는 타겟 이름입니다.
- 만약 텍스트 기반의 콘솔 환경으로만 부팅하고 싶다면 multi-user 를 사용합니다.
'Archive > 리눅스마스터 2급' 카테고리의 다른 글
| 리눅스마스터 2급 2차 2023.06.10 (1) | 2026.02.23 |
|---|---|
| 리눅스마스터 2급 2차 2023.09.09 (0) | 2026.02.21 |