1. 다음 (괄호) 안에 들어갈 내용으로 알맞은 것은?
10GB 용량의 하드디스크 8개가 장착된 시스템이다. 하나의 스페어(Spare) 디스크를 구성하고, 나머지 디스크로 RAID-5로 구성하려고 한다. 이경우에 실제도 사용 가능한 용량은 ( ) GB가 된다 |
① 40 ② 50 ③ 60 ④ 70
정답: ③ 60
▶ RAID: 디스크 고장시 그대로 복구할 수 있도록 2개 이상의 디스크에 데이터를 저장하는 기술
▶ RAID-5는 1개의 패리티비트 디스트와 최소 3개 이상의 디스크로 구성된다.
▶ 8개중 1개의 Spare 디스크와 1개의 패리티비트 디스크를 제외하고 남은 사용 가능한 용량은 6개 x 10GB로 60GB이다.
▶ RAID-0: 최소 2개의 디스크로 구성. 작은 디스크를 모아 하나의 큰 디스크로 만드는 기술. Disk Striping
▶ RAID-1: 여러 디스크에 데이터를 완전 이중화하여 저장하는 방식. Disk Mirroring. Read와 Write가 병렬적으로 실행되어 속도가 빠름
▶ RAID-2: ECC 기능이 없는 디스크의 오류 복구를 위해 개발. Hamming Code를 이용하여 오류 복구. RAID-2는 별도의 디스크에 복구를 위한 ECC를 저장하는 것
▶ RAID-3(Parity ECC): Parity 정보를 별도의 Disk에 저장(Byte 단위 I/O). 1개의 디스크 장애시 Parity를 통해 복구가 가능
▶ RAID-4(Parity ECC, Block I/O): Parity 정보를 별도 디스크에 저장. 데이터는 Block 단위로 데이터 디스크에 분산 저장. RAID-3와 동일하나 Parity를 Block 단위로 관리
▶ RAID-5(Parity ECC, Parity 분산 저장): 분산 Parity를 구현하여 안정성 향상. 최소 3개의 디스크가 요구(일반적으로 4개로 구성). 1개의 패리티비트 디스크
▶ RAID-6(Parity ECC, Parity 분산 복수 저장): 분산 Parity가 적용된 RAID-5의 안정성 향상을 위해 Parity를 다중화하여 저장. 장애가 발생시 추가적 디스크 장애가 발생해도 정상 동작. 최소 2개의 패리티비트 디스크
▶ RAID-7: 하드웨어 컨트롤러에 내장되어 있는 실시간 운영체제를 사용하여 구성하는 방식으로 속도가 빠른 버스를 이용하고 독자적인 여러 특성들을 제공
▶ RAID-0+1: 디스크 2개를 RAID-0의 스트라이핑 기술로 구성하고 다시 RAID-1의 미러링으로 구성하는 방식으로 최소 4개의 디스크가 필요
▶ RAID-10: RAID-0+1의 반대 개념 디스크 2개를 먼저 미러링으로 구성하고 다시 스트라이핑하는 방식
▶ RAID-53: 별도록 스프라이프 어레이를 구성하는 방식. RAID-3보다 높은 성능을 제공. 많은 비용
2. 다음 설명에 해당하는 RAID 관련 기술로 알맞은 것은?
연속된 데이터를 여러 개의 디스크에 라운드 로빈(Round Robin) 방식으로 기록하는 기술로 하나의 디스크에서 읽어 들이는 것보다 더 빠르게 데이터를 읽거나 쓸 수 있다. |
① 스트라이핑(Striping) ② 미러링(Mirroring) ③ 패리티(Parity) ④ ECC(Error Check & Correction)
정답: ① 스트라이핑(Striping)
▶ 스트라이핑: 연속된 데이트럴 여러 개의 디스크에 라운드로빈 방식으로 기록하는 기술. 하나의 디스크에서 읽어 들이는 것보다 더 빠르게 데이터를 읽거나 쓸 수 있다.
▶ 미러링: 디스크에 에러가 발생시 데이터의 손실을 막기 위해, 추가적으로 하나 이상의 장치에 중복 저장하는 기술.
▶ 패리티: 정보의 홀수 또는 짝수 특성. 정보 블록과 연결된 중복 정보, 패리티는 오류 휴 데이터를 재구축하는데 사용되는 계산 값
▶ ECC: 읽혀지거나 전송되고 있는 data에 대해 오류가 생겼는지 검사하고 필요하면 전송중에 정정
3. 다음 중 LVM 구성할 때 가장 먼저 생성되는 것은?
① VG(Volume Group) ② LV(Logical Volume) ③ PV(Physical Volume) ④ PE(Physical Extend)
정답: ③ PV(Physical Volume)
▶ LVM 구성 순서: 물리 디스크-파티션-PV-VG-LV-FS생성-디렉토리 생성-마운트-UUID로 마운트 자동 등록
▶ 파티션 - 각 물리 디스크테 파티션을 만듬
▶ PV: 물리 볼륨 생성
▶ VG: 물리 볼륨을 하나로 묶는 단계
▶ LV: 볼륨 그룹의 파티션 생성
4. 다음 중 프린터 큐의 작업 정보를 확인하는 명령어로 알맞은 것은?
① lp ② lpr ③ lprm ④ lpstat
정답: ④ lpstat
▶ lpr: 인쇄 작업. BSD
▶ lpq: 프린터 큐의 상태 확인. 작업 번호 확인. BSD
▶ lprm: 프린터 큐의 작업을 삭제. BSD
▶ lpc: 프린터 제어. BSD
▶ lp: 프린터 출력. System V
▶ lpstat: 프린터 큐의 상태 확인. 작업 번호 확인. Sytem V
▶ cancel: 작업 취소. System V
5. 다음 설명에 해당하는 명칭으로 알맞은 것은?
리눅스 및 유닉스 계열 운영체제에서 사운드를 만들고 캡처하는 인터페이스로 표준 유닉스 시스템콜(POSIX)에 기반을 두고 있다. 프로젝트 초기에는 Free Software이었으나 사유화되기도 했다. |
① ALSA ② CUPS ③ SANE ④ OSS
정답: ④ OSS
▶ ALSA: 사운드 카드용 장치 드라이버를 제공하기 위한 리눅스 커널 요소. 사운드 카드를 자동으로 구성하고 여러개의 사운드 장치를 관리
▶ OSS: 리눅스 및 유닉스 운영체제에서 사운드를 만들어 캡쳐하는 인터페이스
▶ LPRng: 프린터 설치 및 설정. 리눅스 초기에 사용된 인쇄 시스템. BSD 계열 유닉스 사용
▶ CUPS: 애플이 개발한 오픈 소스 프린팅 시스템. 프린터를 웹 기반으로 제어
▶ SANE: 평판 스캐너, 핸드 스캐너, 비디오 캠 등 이미지에 관련 하드웨어를 제어하는 API로 GPL 라이선스, 리눅스, 윈도우 지원
▶ XSANE: SANE 스캐너 인터페이스를 이용하여 X-윈도우 기반 스캐너 프로그램. GTK+ 라이브러리로 만들어짐. 캡쳐 이미지 수정 작업 가능
6. 다음 중 스캐너 사용과 관련된 프로그램으로 알맞은 것은?
① ALSA ② CUPS ③ SANE ④ LPRng
정답: ③ SANE
▶ ALSA: 사운드 카드용 장치 드라이버를 제공하기 위한 리눅스 커널 요소. 사운드 카드를 자동으로 구성하고 여러개의 사운드 장치를 관리
▶ OSS: 리눅스 및 유닉스 운영체제에서 사운드를 만들어 캡쳐하는 인터페이스
▶ LPRng: 프린터 설치 및 설정. 리눅스 초기에 사용된 인쇄 시스템. BSD 계열 유닉스 사용
▶ CUPS: 애플이 개발한 오픈 소스 프린팅 시스템. 프린터를 웹 기반으로 제어
▶ SANE: 평판 스캐너, 핸드 스캐너, 비디오 캠 등 이미지에 관련 하드웨어를 제어하는 API로 GPL 라이선스, 리눅스, 윈도우 지원
▶ XSANE: SANE 스캐너 인터페이스를 이용하여 X-윈도우 기반 스캐너 프로그램. GTK+ 라이브러리로 만들어짐. 캡쳐 이미지 수정 작업 가능
7. 다음 중 데비안 계열 리눅스에서 환경 설정 파일도 포함해서 vsftpd 패키지를 제거하는 명령으로 알맞은 것은?
① apt-get purge vsftpd ② apt-get remove vsftpd ③ apt-get erase vsftpd ④ apt-get delete vsftpd
정답: ① apt-get purge vsftpd
▶ apt-get: Ubuntu를 포함한 Debian 계열의 리눅스에 쓰이는 패키지 관련 명령어 도구
▶ apt-get update: 인덱스 정보를 업데이트
▶ apt-get upgrade: 설치되어 있는 패키지를 모두 새버전으로 업그레이드
▶ apt-get install 패키지: 패키지 설치
▶ apt-get --reinstall install 패키지: 패키지 재설치
▶ apt-get remove 패키지: 패키지 삭제. 설정파일 제외
▶ apt-get purge 패키지: 패키지 삭제. 설정파일 포함
▶ apt-cache search 패키지: 패키지 검색
▶ apt-cache show 패키지: 패키지 정보 보기
8. 다음 중 rpm 명령으로 의존성이 있는 패키지를 제거하는 명령으로 알맞은 것은?
① rpm -d nmap --nodeps
② rpm -e nmap --nodeps
③ rpm erase nmap --nodeps
④ rpm delete nmap --nodeps
정답: ② rpm -e nmap --nodeps
▶ rpm [option] 패키지: Red Hat Package Manager의 약자로 패키지 설치 수행 명령어
▶ -i: 설치
▶ -U: 업그레이드
▶ -qd: 내부문서 파일 확인
▶ -qc: 내부설정 파일 확인
▶ -e: 삭제
▶ --nodeps: 의존성을 무시하고 진행
▶ --force: 강제로 설치 진행
▶ --replacepkgs: 설치된 동일한 패키지 존재시 패키지 교체
▶ --replacefiles: 설치된 동일한 패키지 존재시 파일 교체
9. 다음은 확장 패키지 관련 저장소를 설치하는 과정이다. (괄호) 안에 들어갈 내용으로 알맞은 것은?
# yum insall ( ) |
① epel ② epel-repository ③ epel-release ④ epel-download
정답: ③ epel-release
▶ epel-release: EPEL 설치.
▶ EPEL: Extra Packages for Enterprise Linux. 패키지를 제공하기 위해 패키지 저장소가 필요. 기존 RHEL이나 CentOS에서 제공되지 않는 패키지 설치를 위한 추가 패키지 저장소
10. 다음은 다운로드 받은 소스 파일의 내용만을 확인하는 과정이다. (괄호) 안에 들어갈 내용으로 알맞은 것은?
# tar ( ) php-8.27.tar.bz2 |
① jxvf ② Jxvf ③ jtvf ④ Jtvf
정답: ③ jtvf
▶ tar로 파일을 묶고 gzip/bzip2를 사용하여 압축
▶ tar [option] [file]: 여러 파일을 하나로 묶거나 푸는 용도로 사용
▶ j: bzip2 압축 적용
▶ z: gzip 압축 적용
▶ x: tar 아카이브에서 파일 추출(파일 풀기)
▶ v: 처리되는 과정 정보 나열
▶ f: 대상 tar 아카이브 지정
▶ c: tar 아카이브 생성. 기존 아카이브 덮어쓰기(파일 묶기)
11. 다음 설명에 해당하는 명령으로 알맞은 것은?
소스 파일의 압축을 푼 디렉터리에서 한 번 작업한 설정이나 관련 파일을 삭제하고 다시 설정 작업을 진행할 때 사용한다. |
① make init ② make zero ③ make clean ④ make neat
정답: ③ make clean
▶ make [option] [target]: 소프트웨어 빌드 자동화. Makefile을 읽어 프로그램을 컴파일하고 빌드
▶ make clean: 빌드 파일 삭제
▶ make all: make clean과 make를 동시에 진행
▶ make -j4: 다중 쓰레드로 빌드
12. 다음 중 프로그램을 소스 파일로 설치하는 과정으로 알맞은 것은?
① configure → make → make install
② make → configure → make install
③ make → make install → configure
④ make install → configure → make
정답: ① configure → make → make install
▶ 소스파일 설치 과정: 압축 풀기 - 디렉터리 이동 - configure - make - make install
▶ configure: 소스 프로그램의 환경 설정을 하는 스크립트. 작업후 Makef 파일 생성 됨.
▶ make: 소프트웨어를 컴파일하여 실행 파일 생성. configure에 의해 변경된 내용 반영
▶ make install: 컴파일된 실행 파일을 지정한 속성으로 지정한 디렉터리에 설치
13. 다음 중 리눅스에서 사용되는 온라인 패키지 관리 도구로 거리가 먼 것은 ?
① dnf ② rpm ③ zypper ④ apt-get
정답: ② rpm
▶ 온라인 기반 패키지 관리 도구: yum, zypper, apt-get, dnf
14. 다음 중 레드햇 계열 리눅스에서 사용되는 패키지 관리 도구로 거리가 먼 것은?
① dnf ② rpm ③ zypper ④ yum
정답: ③ zypper
▶ 레드햇 계열 리눅스 패키지 관리 도구: dnf, rpm, yum
15. 다음중 vi 편집기의 ex 명령모드에 대한 설명으로 틀린 것은?
① w → 작업중인 내용을 저장한다.
② w 파일명 → 지정한 '파일명'으로 저장한다.
③ wq → 변경된 내용을 저장하고 종료한다.
④ q → 수정된 사항이 있어도 무조건 종료한다.
정답: ④ q → 수정된 사항이 있어도 무조건 종료한다.
▶ w: 변경사항 저장
▶ w 파일명: 지정한 파일명으로 저장
▶ wq: 변경 내용 저장후 종료
▶ q: 작업한게 없으면 그대로 종료
▶ q!: 강제 종료
▶ e!: 마지막 저장 이후 수정한 것들 취소하고 편집 상태로 전환
16. 다음 (괄호) 안에 들어갈 내용으로 알맞은 것은?
vi 편집기의 명령 모드 상태에서 특정 문자열을 아래 방향으로 검색하기 위해서는 (ㄱ) 기호를 선언한 뒤에 찾으려는 문자열 패턴을 덧붙여서 기재한다. 만약 다음 문자열을 찾으려면 (ㄴ) 키를 누르면 이동된다. |
① (ㄱ): /, (ㄴ): n ② (ㄱ): ?, (ㄴ): n ③ (ㄱ): /, (ㄴ): N ④ (ㄱ): ?, (ㄴ): N
정답: ① (ㄱ): /, (ㄴ): n
▶ /{검색할 문자열}: 오른쪽 아래 방향으로 문자열 검색
▶ ?{검색할 문자열}: 왼쪽 위 방향으로 문자열 검색
▶ n: 문자열의 다음으로 계속 검색
▶ N: 문자열의 이전으로 계속 검색
17. 다음 중 vi 편집기에서 linux로 끝나는 줄의 마지막에 마침표(.)을 덧붙이도록 치환하는 명령으로 알맞은 것은?
① :% s/linux./linux$/ ② :% s/linux$/linux./ ③ :% s/linux/linux./ ④ :% s/linux/linux$/
정답: ② :% s/linux$/linux./
▶ :s/[대상문자열]/[바꿀문자열]: 커서가 위치한 행에서 첫번째로 나오는 대상문자열을 바꿀문자열로 치환
▶ :%s[대상문자열]/[바꿀문자열]: 파일 전체에서 모든 대상문자열을 바꿀문자열로 치환
▶ :[범위]s[대상문자열]/[바꿀문자열]: 범위 내 모든 각 행에서 첫번째로 나오는 대상문자열을 바꿀문자열로 치환
▶ :[범위]s[대상문자열]/[바꿀문자열]g: 범위 내 모든 행에서 대상문자열을 바꿀문자열로 치환
▶ :[범위]s[대상문자열]/[바꿀문자열]gc: 범위 내 모든 행에서 대상문자열을 바꿀문자열로 바꾸되 수정 여부 질문
18. 다음 중 emacs 편집기를 개발한 인물로 알맞은 것은?
① 빌 조이 ② 리처드 스톨만 ③ 브람 브레나르 ④ 귀도 반 로섬
정답: ② 리처드 스톨만
▶ vi: 빌 조이
▶ emacs: 리처드 스톨만
▶ pico: 아보일 카사르
▶ vim: 브람 무레나르
▶ nano: 크리스 알레그레타
▶ gedit: 파올로 ㅁ매기
19. 다음 중 nano 편집기에서 현재 커서가 위치한 줄의 처음으로 이동할 때 사용하는 키 조합으로 알맞은 것은?
① [Ctrl] + [a] ② [Ctrl] + [e] ③ [Ctrl] + [o] ④ [Ctrl] + [i]
정답: ① [Ctrl] + [a]
▶ [Ctrl] + [a]: 커서를 현재 행의 시작으로 이동
▶ [Ctrl] + [e]: 커서를 현재 행의 끝으로 이동
▶ [Ctrl] + [o]: 현재 편집 중인 파일을 다른 이름으로 저장
▶ [Ctrl] + [S]: 현재 편집 중인 파일을 저장
▶ [Ctrl] + [X]: 종료
20. 다음 중 X 윈도 환경에서만 사용 가능한 편집기로 알맞은 것은?
① nano ② pico ③ kwrite ④ vim
정답: ③ kwrite
▶ nano: 터미널에서 실행되는 편집기
▶ X 윈도 환경에서만 사용 가능한 편집기: gedit, xemacs, gvim, kwrite
21. 다음 중 작업번호가 2번인 백그라운드 프로세스를 종료시키는 명령으로 알맞은 것은?
① kill 2 ② kill %2 ③ kill -j 2 ④ kill -b 2
정답: ② kill %2
▶ kill [option/signal] [pid]: 해당 프로세스를 종료
▶ -s[signal_num/name]: 보낼 시그널 지정
▶ -9: PID를 직정 지정하여 종료
▶ %숫자: 해당 작업번호 프로세스 제거
▶ kill -l: 시그널 목록 출력
22. ps 명령의 상태(STAT) 코드 중에 작업은 종료되었으나 부모프로세스에 의해 회수되지 않아 메모리를 차지하고 상태를 나타내는 값으로 알맞은 것은?
① R ② S ③ T ④ Z
정답: ④ Z
▶ R: 실행되고 있거나 실행될 수 있는 상태(실행 큐에 존재)
▶ S: 인터럽트에 의한 대기 상태(특정 이벤트가 완료되기까지 기다림)
▶ T: 작업 제어 신호에 의해 중지된 상태
▶ Z: 사용되지 않는 프로세스(좀비 프로세스). 종료되었지만 부모프로세스에 의해 회수되지 않음
23. 다음 중 프로세스 관련 명령어로 설정 가능한 NI 값의 범위로 알맞은 것음?
① -19 ~ 19 ② -19 ~ 20 ③ -20 ~ 19 ④ -20 ~ 20
정답: ③ -20 ~ 19
▶ 프로세스에 설정된 NI값은 기본 값은 0. 변경 가능한 범위는 -20~19
▶ 값이 작을 수록 우선순위가 높음. 일반 사용자는 NI값 증가만 가능. root는 NI값 감소 가능
▶ nice [option] [process]: 프로세스의 우선순위를 변경하는 명령어. NI값 설정에 사용
▶ renice [option] [NI값] [PID]: 실행 중인 프로세스의 우선순위를 변경할 때 사용.
24. cron을 이용해서 해당 스크립트를 매주 1회씩 주기적으로 실행하려고 한다. (괄호) 안에 들어갈 내용으로 알맞은 것은?
( ) /etc/backup.sh |
① 1 1 1 * * ② 1 1 * 1 * ③ 1 1 * * 1 ④ * 1 1 1 *
정답: ③ 1 1 * * 1
▶ cron: Linux 계열에서 특정 시간에 특정 작업을 하는 데몬
▶ crontab: cron이 언제 무엇을 하는지 특정 파일에 저장하는 것. cron이라는 데몬이 원하는 시간에 원하는 명령 또는 프로그램을 수행하도록 명령 리스트를 만드는 것
▶ crontab 주기: * * * * * [실행 명령]
▶ 분(0-59)/시(0-23)/일(0-31)/월(0-12)/요일(0-6, 일요일부터 시작)
▶ 매시 정각 실행: 0 * * * * [실행 명령]
▶ 매일 13시 정각 실행: 0 13 * * * [실행 명령]
▶ 매주 월요일 자정 실행: 0 0 * * 1 [실행 명령]
▶ 매시 25분, 55분에 실행: 25, 55 * * * * [실행 명령]
▶ 15분마다 실행: */15 * * * * [실행 명령]
25. 다음 명령의 결과에 대한 설명으로 알맞은 것은?
# nice bash |
① bash 프로세스의 우선순위를 높인다.
② bash 프로세스의 우선순위를 낮춘다.
③ bash 프로세스의 우선순위 값을 출력한다.
④ 사용법 오류로 인해 실행되지 않는다.
정답: ② bash 프로세스의 우선순위를 낮춘다.
▶ nice의 default값은 0
26. 다음 중 포어그라운드 프로세스를 종료하기 위해 사용하는 키 조합으로 알맞은 것은?
① [Ctrl] + [c] ② [Ctrl] + [a] ③ [Ctrl] + [z] ④ [Ctrl] + [d]
정답: ① [Ctrl] + [c]
▶ [Ctrl] + [c]: 프로세스 종료
▶ [Ctrl] + [a]: 맨 앞으로 커서 이동
▶ [Ctrl] + [z]: 프로세스 정지
▶ [Ctrl] + [d]: 현재 커서 글자 삭제
27. 다음 중 standalone 방식과 inetd 방식에 대한 비교 설명으로 알맞은 것은?
① inetd 방식이 standalone 방식보다 메모리 관리가 더 효율적이다.
② inetd 방식이 standalone 방식보다 관련 서비스 처리가 빠르다.
③ 웹과 같은 빈번한 요청이 들어오는 서비스는 inetd 방식이 적합하다.
④ 사용자가 많은 서비스는 standalone 방식보다 inetd 방식이 적합하다.
정답: ① inetd 방식이 standalone 방식보다 메모리 관리가 더 효율적이다.
▶ 리눅스 서버가 네트워크 서비스를 제공하는 방법: standalone 방식과 inetd 방식
▶ standalone 방식: 서버가 부팅할 때 또는 명령을 내려 데몬을 작동시키며 데몬은 백그라운드에서 요청을 기다렸다가 요청이 들어오면 혼자서 처리하는 방식. 항상 메모리에 상주하므로 리눅스 서버의 메모리를 많이 소모. Apache Web Server
▶ inetd 방식: 서비스 요청이 있을 때마다 inetd라는 수퍼 데몬에 의해서 해당 데몬을 실행해 주는 방식. 적은 시스템 자원으로 여러가지 서비스 제공. Telnet
28. 다음 중 사용자가 본인이 실행한 백그라운드 프로세스 목록을 확인하는 명령어로 가장 알맞은 것은?
① ps ② bg ③ jobs ④ exec
정답: ③ jobs
▶ ps: 현재 실행 중인 프로세스와 상태를 출력하는 명령어
▶ bg: 현재 실행중인 프로세스를 백그라운드 작업으로 전환
▶ jobs: 로그인 후 사용자가 실행한 프로세스에 대해서 확인하는 명령어
29. 다음 보기의 시그널을 번호값이 낮은 순부터 높은 순으로 정렬했을 때 세 번째에 해당하는 시그널 이름으로 알맞은 것은?
① SIGTSTP ② SIGKILL ③ SIGINT ④ SIGTERM
정답: ④ SIGTERM
▶ SIGUP(1): 터미널과 연결이 끊어졌을 때
▶ SIGINT(2): 현재 작동 중인 프로그램의 동작을 멈출 때 사용
▶ SIGQUIT(3): 사용자가 터미널에서 종료키 누를 때
▶ SIGABRT(6): 비정상 종료 함수에 의해 발생
▶ SIGKILL(9): 실행 중인 프로세스 강제 종료
▶ SIGTERM(15): 정상적인 종료 방법
▶ SIGCHLD(17): 자식 프로세스 종료할 때 사용
▶ SIGSTOP(19): SIGCONT 시그널을 받을 때 사용
▶ SIGTSTP(20): 프로세스 대기로 전환할 때 사용. Ctrl + z
30. 다음 (괄호) 안에 들어갈 내용으로 알맞은 것은?
하나의 프로세스가 다른 프로세스를 실행하기 위한 시스템 호출 방법에는 (ㄱ)와 (ㄴ)가 있다. (ㄱ)는 새로운 프로세스를 위해 메모리를 할당 받아 복사본 형태의 프로세스를 실행하는 형태로 기존의 프로세스는 그대로 실행되어 있다. 새롭게 생성된 프로세스는 원래의 프로세스랑 똑같은 코드르 기반으로 실행된다. (ㄴ)는 원래의 프로세스를 새로운 프로세스로 대체하는 형태로 호출한 프로세스의 메모리에 새로운 프로세스의 코드를 덮어 씌워 버린다. |
① (ㄱ): exec , (ㄴ): fork
② (ㄱ): fork, (ㄴ): exec
③ (ㄱ): background, (ㄴ): foreground
④ (ㄱ): foredground , (ㄴ): background
정답: ② (ㄱ): fork, (ㄴ): exec
▶ fork: 자식 프로세스를 만드는 명령어. 프로세스를 하나더 생성(PID가 다름). 동시에 두 개의 프로그램으로 나누어져 실행
▶ exec: 새로운 프로세스에 PID 그대로 적용. exec() 호출한 프로세스는 새로운 프로세세에 의해 덮어 쓰여짐
▶ foreground: 프로세스가 실행되는 동안 shell 사용 불가. fg %작업번호
▶ background: 프로세스 실행 중에도 shell 사용 가능. bg %작업번호
31. 다음 설명에 해당하는 파일명으로 가장 알맞은 것은?
모든 사용자에게 적용되는 alias와 함수를 설정하려고 한다. |
① /etc/.bashrc ② /etc/.bash_profile ③ /etc/bashrc ④ /etc/profile
정답: ③ /etc/bashrc
▶ .bashrc: 지역 변수
▶ bashrc: 전역 변수
32. 다음 중 (괄호) 안에 들어갈 명령의 결과로 알맞은 것은?
$ user=kaitman $ echo "$user" ( ) |
① 아무것도 출력되지 않는다 . ② $user ③ ihduser ④ kaitman
정답: ④ kaitman
▶ echo "$변수": 변수 값 출력
33. 다음 중 가장 최근에 실행한 명령을 재실행할 때 사용하는 명령으로 알맞은 것은?
① !0 ② !1 ③ !! ④ history -1
정답: ③ !!
▶ !!: 직전 명령어 재실행
▶ !-n: 현재 명령행에서 n개수를 뺀 행의 명령어
▶ history: 이전에 실행한 명령어들 확인
▶ !n: 해당 숫자에 해당하는 명령어 실행
34. 다음은 셸 변수를 선언한 수에 관련 내용을 확인하는 과정이다. (괄호) 안데 들어갈 명령어로 알맞은 것은?
$ a=1 $ b=2 $ ( ) |
① printenv ② unset ③ env ④ set
정답: ④ set
▶ printenv: 현재 설정되어 있는 환경변수 값을 출력
▶ env: bash에서 환경 변수를 조회하거나 등록하는 명령어. 전역 변수 설정 및 조회
▶ unset: bash 셀 변수 설정 해제
▶ set: 모든 변수와 함수 출력. 현재 정의된 변수 목록을 표현. 사용자 환경 변수 설정 및 조회
35. 다음은 로그인 셸을 확인하는 과정이다. (괄호) 안에 들어갈 명령어로 알맞은 것은?
# (괄호) PID TTY TIME CMD 2472 pts/0 00:00:00 bash 2881 pts/0 00:00:00 ( ) |
① ps ② chsh ③ jobs ④ shells
정답: ① ps
▶ ps: 현재 실행 중인 프로세스 상태를 보여주는 명령어
▶ chsh: 로그인 셀 변경 명령어
▶ jobs: 작업 중지, 백그라운드, 변경되었지만 보고되지 않은 상태 등을 보여주는 명령어
36. 다음 (괄호) 안에 들어갈 파일명으로 알맞은 것은?
특정 사용자가 로그인 시에 부여되는 셀 정보는 (괄호) 파일에서 확인할 수 있다. |
① /etc/passwd ② /etc/shells ③ /etc/bashrc ④ etc/profile
정답: ① /etc/passwd
▶ /etc/passwd: 시스템에 등록된 사용자의 정보들이 담기 파일. 사용자의 계정과 인증을 관리
▶ /etc/shells: 사용 가능한 셀 리스트 확인
▶ /etc/bashrc: 전역 변수. 전체 사용자에게 적용되는 환경 설정. 이미 로그인한 상태에서 사용자가 셀을 열때마다 실행되는 셀 스크립트
▶ /etc/profile: 시스템 전역에 대한 환경설정 파일. 로그인시 설정 내용을 읽음
37. 다음은 ihdman 사용자가 변경 가능한 셀의 목록 정보를 확인하는 과정이다. (괄호) 안에 들어갈 내용으로 알맞은 것은?
$ chsh (괄호) |
① -l ② -u ③ -s ④ -c
정답: ① -l
▶ chsh [option] [셀경로] [사용자명]: 사용자의 로그인 셀을 변경
▶ -l: /etc/shells 파일 안에 지정된 셀을 출력
▶ -u: 도움말을 출력
▶ -s: 지정하는 셀을 사용할 로그인 셀로 변경
38. 다음 설명에 해당하는 셀로 알맞은 것은?
히스토리 기능, Alias 기능, 작업 제어 등과 같은 유용한 기능이 포함된 셀로 1978년에 버클리 대학의 빌 조이가 개발하였다. |
① bourne shell ② csh ③ dash ④ bash
정답: ② csh
▶ shell: 커널과 사용자를 이어주는 통로 역할
▶ sh: 최초의 Unix Shell. 켐 톰슨 개발
▶ bourne shell: 처음으로 유닉스 셀에서 파생한 shell. 벨 연구소의 스티븐 본이 개발. 최초의 셀
▶ csh: 빌 조이 개발. 히스토리 기능 제공. 별칭(alias) 기능 제공
▶ tcsh: csh 확장. 명령어 행 자동완성
▶ ksh: 데이비드 콘 개발. 본셸과도 호환
▶ bash: GNU 프로젝트를 위해 브라이언 폭스가 개발
39. 다음 설명에 해당하는 파일명으로 알맞은 것은?
현재 시스템에 마운트된 파일 시스템 정보를 저장하고 있는 파일로 실제 파일은 /proc/self/mounts이다. |
① /etc/fstab ② /etc/mtab ③ /etc/mounts ④ /proc/partitions
정답: ② /etc/mtab
▶ /etc/fstab: 파일시스템 정보 저장. 리눅스 부팅시 마운트정보를 저장. 관리자가 직접 편집
▶ /etc/mtab: 시스템에 마운트된 파일 시스템. 디바이스의 정보를 알 수 있도록 한 파일. mntfs에 의해 자동으로 정보가 등록. 언마운트가 되면 자동으로 정보 삭제
▶ /etc/mounts: proc 가상 파일 시스템의 일부. 파일이라고 할 수 없으며, 리눅스 커널이 시스템 상태를 파일 형식으로 나타내어 보여주는 것
40. 다음 중 /etc/fstab 파일의 첫 번째 필드에 설정할 수 있는 값으로 틀린 것은?
① UUID ② LABEL ③ 마운트 포인트 ④ 장치 파일명
정답: ③ 마운트 포인트
▶ /etc/fstab: 파일시스템 정보 저장. 리눅스 부팅시 마운트정보를 저장
▶ 구성: 파일시스템 장치/마운트 포인트/파일 시스템 종류/옵션/덥프/파일체크옵션
▶ 파일시스템 장치: 파일 시스템의 장치명을 설정하는 부분. blkid 명령어를 통해 얻은 UUID로 마운트
▶ 마운트 포인트: 파일 시스템을 마운트 시킬 위치를 설정하는 부분
▶ 파일 시스템 종류: 마운트 하기전에 파일시스템을 결정
▶ 옵션: 파일 시스템 속성을 설정하는 옵션
▶ 덤프: dump 명령으로 0과 1로 나뉨. 0(백업하지 않음), 1(백업 가능한 파일 시스템)
▶ 파일체크옵션: 루트파일 시스템을 점검할 때 사용. 0(부팅시 점검하지 않음). 1(/부분을 체크 후 부팅). 2(/를 제외한 나머지 파티션 체크 후 부팅)
41. 다음은 ihduser 사용자의 홈 디렉터리가 차지하고 있는 디스크 용량을 확인하는 과정이다. (괄호) 안에 들어갈 명령어로 알맞은 것은?
# (괄호) 56M /home/ihduser |
① df -sh ~ihduser ② quota ihduser ③ du -sh ~ihduser ④ df -sh /home/ihduser
정답: ③ du -sh ~ihduser
▶ df -sh: 전체 디스크 여유 공간 확인. -h(M, G 단위 디스크 공간 확인). -s(요약 정보 출력)
▶ du -sh: 디렉토리 디스크 사용량 확인. -h(K, M, G 단위로 확인). -s(요약된 정보 출력)
▶ quota [옵션] 사용자계정/그룹명: 쿼터 정보 출력
42. 다음 중 fdisk 작업 후에 변경된 파티션 정보를 저장하고 종료하는 명령어로 알맞은 것은?
① n ② w ③ x ④ q
정답: ② w
▶ n: 새로운 파티션 추가
▶ w: 디스크에 테이블을 기록하고 빠져나감
▶ q: 변경을 저장하지 않고 종료
▶ d: 파티션 삭제
43. 다음 결과에 해당하는 명령어로 알맞은 것은?
# ( ) /dev/sda1: UUID="...." TYPE="xfs" /dev/sda2: UUID="..." TYOE="swap" |
① lsblk ② blkid ③ fdisk ④ uuid
정답: ② blkid
▶ lsblk: 블럭 장치 목록을 마운트 되지 않은 블럭 장치 포함해서 보여주는 명령어
▶ blkid: 블록 장치의 UUID 확인. 파일 시스템 타입 확인. 장치 이름 확인. fstab 설정에 사용
▶ fdisk: 디스크 파티션을 생성하는 명령어. 파티션 정보 출력
44. 다음 그림에 해당하는 명령어로 알맞은 것은?
Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace -------------------------------------------------------------------------- root .. 0 0 0 3 0 alin .. 12 102400 112640 7 0 joon2 .. 12 0 0 7 0 |
① quota ② edquota ③ repquota ④ xfs_quota
정답: ③ repquota
▶ 디스크 쿼터: 디스크 사용량을 제한하는 것
▶ quota [옵션] 사용자계정/그룹명: 쿼터 정보 출력
▶ edquota [옵션] 사용자계정/그룹명: 쿼터 설정하기
▶ requota [옵션] 사용자계정/그룹명: 쿼터 정보 요약 출력
▶ xfs_quota -x -c '쿼터지정 설정': -x(관리자 명령 실행 기본 사용 옵션), -c(쿼터 관련 명령 지정)
45. 다음 중 설정된 umask 값이 0022일 경우 생성되는 파일의 허가권 값으로 알맞은 것은?
① -rw-r--r--
② -rw-rw-r--
③ -rwxr-xr-x
④ -rwxrwxr-x
정답: ① -rw-r--r--
▶ umask: 새로 생성되는 파일이나 디렉토리의 권한 제한.
▶ umask의 값을 022로 사용하면 rwxrwxrwx로 생성될 것이 파일은 rwxr-xr-x, 디렉터리는 rwxr-xr-x로 생성
▶ 별도 지정이 없다면 텍스트 파일은 0644, 실행 파일은 0755 권한
▶ umask 값: 해당 값으로 umask 변경
▶ umask -s: 현재 umask값을 symbolic으로 표시
▶ 파일 생성시 umask 설정값과 XOR로 계산
46. project 그룹에 속한 사용자들이 /project 디렉터리에서 파일 생성은 자유로우나 삭제는 본인의 생성한 파일만 가능하도록 설정하려고 한다. 또한 파일 생성시 자동으로 그룹 소유권이 project로 부여되도록 설정하려고 한다. /project 디렉터리의 정보가 다음과 같을 때 관련 명령으로 알맞은 것은?
# ls -ld /project drwxr-x--- 2 root project 6 Apr 4 10:32 /project # |
① chmod 1770 /project ② chmod 2770 /project ③ chmod 3770 /project ④ chmod 5770 /project
정답: ③ chmod 3770 /project
▶ 3770/3070: 파일 생성시 그룹 자동 할당 setgid, 본인이 생성한 파일만 파일 삭제 가능)
▶ 2770: 해당 그룹에 속한 사용자만 접근하고, 파일 생성 및 삭제시 자동으로 그룹 소유권이 ihd로 설정
47. 다음 명령의 결과로 설정되는 lin.txt 파일의 허가권 값으로 알맞은 것은?
$ ls -l lin.txt -rw-rw-r-- 1 posein posein 81 Jun 28 17:09 lin.txt $ chmod g=r lin.txt |
① -----r---- ② -r--r--r-- ③ -rw-r--r-- ④ -rw-rw----
정답: ③ -rw-r--r--
▶ chmod 명령어는 파일의 mode를 변경하는 명령어
▶ chmod [option] [mode] [file]
▶ option: -v(메시지 출력), -f(에러 출력하지 않음), -c(파일 모드 변경시 진단 메시지 출력), -R(지정모드를 재귀적 적용)
▶ mode: u(소유자), g(그룹), o(그외 사용자), a(모든 사용자) 지정. +(추가), -(제거), =(현재 모드로 지정). r(읽기), w(쓰기), x(실행)
48. 다음 중 파일이나 디렉터리의 소유자를 변경하는 명령어로 알맞은 것은?
① ls ② chgrp ③ chown ④ umask
정답: ③ chown
▶ ls: 현재 위치나 특정 경로의 디렉토리 내용의 리스트를 출력
▶ chgrp: 파일이나 디렉토리의 소유자를 변경하는 명령어
▶ chown: 파일이나 드렉토리의 소유그룹을 변경하는 명령어
▶ umask: 새로 생성되는 파일이나 디렉토리의 권한을 제한하는 명령어
'1-2. 국가공인민간자격 모음 > [국가공인]리눅스마스터 2급' 카테고리의 다른 글
[리눅스마스터 2급] 2차 - 2023년 06월 10일(1과목) 해설 (2) | 2024.12.12 |
---|---|
[리눅스마스터 2급] 2차 - 2023년 09월 09일(2과목) 해설 (0) | 2024.12.12 |
[리눅스마스터 2급] 2차 - 2023년 09월 09일(1과목) 해설 (2) | 2024.12.12 |
[리눅스마스터 2급] 2차 - 2023년 12월 9일(2과목) 해설 (0) | 2024.12.12 |
[국가공인] 리눅스마스터 2급 (0) | 2024.11.26 |