리눅스 마스터 2급

[리.마 2급 기출 풀이]_2022.06.11_(1~20)

ITsubin 2022. 8. 24. 23:06

1. 다음 중 예약된 프린터 작업을 취소하는 명령으로 알맞은 것은?

   lpr

   ② lpq

    cancel

   lpstat

 

예약된 프린터 작업을 취소하는 명령은 "cancel"입니다.

 

유닉스 계열에 따라 (BSD 계열, System V 계열) 서로 다른 프린터 명령어를 지원하며,

대부분의 배포판에서는 이 두 계열의 명령어를 모두 지원합니다.

 

계열과 명령어에 대한 설명은 아래와 같습니다.

계열 프린터 명령어 설명
BSD 계열 lpr 프린터 작업 요청
lpq 프린터 큐에 있는 작업 목록 출력
lprm 프린터 큐에 대기중인 작업 삭제
lpc 프린터나 프린터 큐 제어 ( 라인 프린터 컨트롤 프로그램 )
System V 계열 lp 프린터 작업 요청 (lpr과 유사)
lpstat 프린터 큐의 상태 확인
cancel (예약된) 프린트 작업 취소

2. 다음 중 스캐너를 사용하기 위해 설치해야 하는 패키지로 알맞은 것은?

   LPRng

   ALSA

   CUPS

    XSANE

 

스캐너를 사용하기 위해 설치해야 하는 패키지는 보기 중 "XSANE"입니다.

X based interface for the SANE의 약어로,

SANE 스캐너 인터페이스를 이용한 X-Windows 기반의 스캐너 프로그램입니다.

 

리눅스 환경에서의 스캐너 지원 시스템은 [ SANE ][ XSANE ] 입니다.


3. 다음 RAID 구성 레벨 중에서 디스크 오류 대처와 가장 거리가 먼 것은?

    RAID-0

   ② RAID-1

   RAID-5

   ④ RAID-6

 

RAID 구성 레벨 중 디스크 오류 대처와 가장 거리가 먼 것은 "RAID-0"입니다.

 

RAID란 복수 배열 독립 리스크 (Redundant Array of Independent Disks)로,

여러 개의 물리적 디스크를 하나의 논리적 디스크로 인식하여 작동하게 하는 기술입니다.

 

RAID 각 레벨에 대한 설명은 아래와 같습니다.

 

RAID 0 "Striping" 저장 방식. (연속된 데이터를 여러 디스크에 나눠 저장)

최소 두 개의 하드디스크 필요.

입출력 작업이 모든 디스크에 동시에 진행되기 때문에 빠르지만 고장에 매우 취약.
(하나의 디스크라도 고장나면 전체 시스템 사용 불가)

고장 대비 능력이 없으므로 주요 데이터 저장은 부적합.
RAID 1 "Mirroring" 저장 방식. (하나의 디스크에 데이터가 저장되면 다른 디스크에 동일한 내용 백업)

데이터 저장 시 두 배의 용량이 필요하기 때문에 결함허용을 제공하지만 공간 효율성은 떨어짐.

주요 데이터 저장 적합.
RAID 2 "Striping" 저장 방식.

기록용 디스크와 데이터 복구용 디스크를 별도로 제공하여 오류 제어 기능이 없는 디스크를 위해 해밍 코드 사용

디스크의 사용 효율성이 낮음.

모든 SCSI 디스크에 ECC(에러 검출 기능)을 탑재하고 있기 때문에 실제 사용되지 않음.
RAID 3 "Striping" 저장 방식.

오류 검출을 위해 패리티 방식 이용.

패리티 정보를 저장하기 위해 전용 디스크를 사용하기 때문에 최소 3개 이상의 하드디스크 필요.

데이터 복구는 패리티 저장 디스크에 기록된 정보의 XOR를 계산하여 수행.

대형 레코드가 사용되는 단일 사용자 시스템에 적합.
RAID 4 RAID 3와 유사. (전용 패리티 디스크 사용)

RAID 3은 [ Byte ] 단위
RAID 4는 [ Block(섹터) ] 단위로 저장
RAID 5 "Striping" 저장 방식.

디스크마다 패리티 정보를 갖고 있어 패리티 디스크의 병목 현상을 줄이는 것이 가능.
( 실무에서 가장 많이 사용됨. )

디스크 섹터 단위로 저장.

쓰기 작업이 많지 않은 다중 사용자 시스템에 적합.
RAID 6 RAID 5의 확장 Ver.

제 2 parity를 두는 dual parity를 사용함으로써 더 나은 무정지성을 갖게 함.

최소 4개의 드라이브가 필요.

4. 다음 중 사운드 카드와 관련된 조합으로 알맞은 것은?

   OSS, CUPS

   ② ALSAM CUPS

   OSS, SANE

   ④ OSS, ALSA

 

리눅스 환경에서의 사운드 카드 지원 시스템은 [ OSS ]  [ ALSA ] 입니다.

 

OSS와 ALSA에 대한 설명은 아래와 같습니다.

 

1) OSS : Open Sound System

> 리눅스 및 유닉스 계열 운영체제에서 사운드를 만들고 캡쳐하는 인터페이스.

> 표준 유닉스 장치 시스템 콜(POSIX READ, WRITE, IOCTL 등)에 기반을 둠.

> 현재 리눅스 커뮤니티에서는 ALSA로 대체.

 

2) ALSA : Advanced Linux Sound Architecture

> 사운드 카드용 장치 드라이버를 제공하기 위한 리눅스 커널 요소.

> 1998년 Jaroslav Kysela에 의해 시작되어, 현재는 GPL 및 LGPL 라이센스 기반으로 배포되고 있다.

> 사운드 카드를 자동으로 구성하고 시스템에 여러 개의 사운드 장치를 관리하는 것이 목적이다.

> OSS의 지원을 받아서 하드웨어 기반 미디어 합성, 다중 채널 하드웨어 믹싱, 전이중 통신,

   다중 프로세서와의 조화, 스레드 안정장치 드라이버 등의 기능을 지원한다.

> 환경 설정 파일은 /etc/asound.state이다.


5. 다음 유닉스에서 사용하는 프린팅 명령어 중 나머지 셋과 계열이 다른 것은?

    lp

   ② lpr

   lpq

   ④ lprm

 

lp는 System V 계열, 나머지 명령어는 BSD 계열입니다.

 

프린팅 명령어의 계열과 명령어에 대한 설명은 아래와 같습니다.

계열 프린터 명령어 설명
BSD 계열 lpr 프린터 작업 요청
lpq 프린터 큐에 있는 작업 목록 출력
lprm 프린터 큐에 대기중인 작업 삭제
lpc 프린터나 프린터 큐 제어 ( 라인 프린터 컨트롤 프로그램 )
System V 계열 lp 프린터 작업 요청 (lpr과 유사)
lpstat 프린터 큐의 상태 확인
cancel (예약된) 프린트 작업 취소

6. 다음 설명에 해당하는 LVM 용어로 알맞은 것은?

파일 시스템을 구성하는 일반적인 디스크의 블록(Block)에 해당하고 일정한 크기를 갖는다.

   ① PE

   ② PV

    LV

   ④ VG

 

LVM이란 Logical Volume Manager로, 여러 개의 하드디스크를 합쳐서 사용하는 기술입니다.

 

LVM은 아래와 같은 특징을 지닙니다.

  1) 한 개의 파일 시스템을 사용합니다.

  2) 작은 용량의 하드디스크 여러 개를 큰 용량의 하드디스크 한 개처럼 사용합니다.

  3) 서버를 운영하면서 대용량의 별도 저장 공간이 필요할 때 활용합니다.

  4) 다수의 디스크를 묶어서 사용함으로써 파티션의 크기를 줄이거나 늘릴 수 있습니다.

 

LVM의 주요 용어는 아래와 같습니다.

  1) PV (Physical Volume; 물리 볼륨) : 여러 개의 물리적 하드디스크

  2) PE (Physical Extent; 물리 영역) : 물리 볼륨(PV)을 구성하는 일정한 크기의 블록. (4MB)

  3) VG (Volume Group; 볼륨 그룹) : 물리 볼륨(PV)을 합쳐서 하나의 물리적 그룹으로 만드는 것

  4) LV (Logical Volume; 논리 볼륨) : 볼륨 그룹(VG)을 논리 그룹으로 다시 나누는 것

  5) LE (Logical Extent; 논리 영역) : 논리 볼륨(LV)을 구성하는 일정한 크기의 블록. (4MB)


7. 다음 중 yum 명령을 이용해서 sendmail 패키지를 설치하는 명령으로 알맞은 것은?

    yum install sendmail

   ② yum -i sendmail

   yum -yl sendmail

   ④ yum infol sendmail

 

yum의 설치 옵션은 "install"입니다.

 

yum의 주요 옵션은 아래와 같습니다.

  • install [패키지명]  >>  패키지 설치
  • remove [패키지명]  >>  패키지 삭제
  • update [패키지명]  >>  패키지 업데이트
  • search [문자열]  >>  패키지 검색
  • info [패키지명]  >>  패키지 요약 정보 확인
  • list  >>  특정 단어가 포함된 패키지 리스트
  • whatprovides [파일명]  >>  특정 파일을 제공한 패키지 검색
  • -y  >>  Yes, No의 답변에 Yes로 자동 설정

8. 다음은 httpd 라는 이름의 rpm 패키지가 설치되어 있는지를 확인하는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?

# rpm ( 괄호 ) | grep httpd

    -qa

   ② -qi

   -qd

   ④ -ql

 

rpm (ReadHat Package Manager)는 레드햇 사에서 만들어낸 패키지 관리 툴입니다.

형식 : rpm [옵션] 패키지명

 

새로운 패키지를 설치, 업그레이드, 삭제 시 사용합니다.

레드햇 계열의 패키지 파일 확장명은 *.rpm입니다.

 

모든 패키지(-a)에 대해 설치 여부(-q)를 확인해야 하기 때문에 아래와 같은 명령을 사용합니다.

# rpm ( -qa ) | grep httpd

 

rpm의 주요 옵션은 아래와 같습니다.

옵션 기능
-i 새로운 패키지를 설치
-h 패키지를 풀 때 해시(#) 마크 표시
-U 기존 패키지 업그레이드
-e 패키지 제거
-q 패키지 설치 여부 확인
-f <파일> <파일>을 포함하는 패키지에 대해 질문 수행
-F -f와 같지만 파일 이름을 표준 입력에서 읽음
-v 진행 과정을 메시지로 표시
-vv 진행 과정을 메시지로 표시
--nodeps 의존성 관계를 무시하고 설치
--oldpackage 구 버전으로 다운그레이드
--replacepkgs 패키지 재설치
-V verify 즉, 검증 시 사용
-a 모든 패키지 검사
-l 설치된 패키지 리스트

 


9. 다음 중 소스 파일로 프로그램 설치하는 방법이 나머지 셋과 다른 것은?

    MySQL

   Apache httpd

   PHP

   Nmap

 

소스코드를 설치할 때는 소스코드를 압축 해제 후 컴파일 순서에 따라 프로그램을 설치합니다.

 

기본적인 컴파일 순서는 아래와 같습니다.

1) 환경설정 (Configure)

2) 컴파일 (Make)

3) 파일 설치 (Make Install)

 

cmake 기반의 컴파일 순서는 아래와 같습니다.

1) cmake (Cross Platform Make)

2) make install

 

MySQL은 cmake 기반의 소스 설치를 수행하는 프로그램으로,

나머지 세 개의 프로그램과는 설치하는 방법이 다릅니다.

 

KDE, Mysql 등이 cmake를 사용합니다.


10. 다음은 MySQL 소스 파일을 설치하기 위해서 압축을 푸는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?

# tar ( 괄호 ) mysql-boost-5.7.36.tar.gz

   gxvf

    zxvf

   jxvf

   Jxvf

 

아카이브(archive)는 다수 개의 파일이나 디렉터리를 하나의 파일로 묶는 것으로,

아카이브 파일은 다른 시스템으로 다수 개의 파일을 한 번에 전송하거나 파일 백업용으로 사용합니다.

아카이브 파일의 확장자는 .tar 입니다.

 

tar의 옵션은 주로 vf 와 추가 옵션을 붙여서 사용합니다.

v : 처리하고 있는 파일의 정보를 화면에 출력

f : 아카이브 파일명을 지정, 생략하면 디폴트 파일명으로 지정

 

압축을 푸는 과정이기 때문에 압축을 푸는(원본 파일로 복원하는) 옵션인 x를 붙여 -xvf를 사용합니다.

 

해당 파일의 확장자는 .gz로, gzip 방식으로 아카이브된 파일임을 알 수 있습니다.

따라서, z 옵션을 추가로 사용하여 아래와 같이 압축을 풀어줍니다.

# tar ( -zxvf ) mysql-boost-5.7.36.tar.gz

 

tar의 주요 옵션과 기능은 아래와 같습니다.

옵션 기능
c 새로운 아카이브 파일 tar 생성
x tar로 묶은 파일을 원본 파일로 복원(묶음 해제, 압축 해제)
d 아카이브에 있는 파일과 비교
r 아카이브된 파일의 마지막 부분에 파일 추가
t 아카이브 파일 안에 있는 파일 목록 나열
u 아카이브에 있는 기존 파일보다 새로운 파일로 업데이트
f 아카이브 파일명을 지정, 생략하면 디폴트 파일명으로 지정
v 처리하고 있는 파일의 정보를 화면에 출력
z gzip으로 압축하거나 해제
j bzip2로 압축하거나 해제
P 절대 경로 정보 유지
J xz 옵션으로 압축 파일인 tar.xz에 사용
--exclude 특정 디렉터리를 제외하고 묶음(압축)

 


11. 다음은 rpm 파일을 내려받아서 설치하는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?

# rpm ( 괄호 ) vsftpd-3.0.2-28.el7.x86-64.rpm

    -U

   -I

   -E

   -V

 

rpm 파일을 내려받아 설치할 경우 -i 옵션을 사용합니다.

기존 설치가 없다면 패키지 업그레이드 옵션인 -U를 사용해도 같은 기능을 수행합니다.

 

rpm의 주요 옵션은 아래와 같습니다.

옵션 기능
-i 새로운 패키지를 설치
-h 패키지를 풀 때 해시(#) 마크 표시
-U 기존 패키지 업그레이드
-e 패키지 제거
-q 패키지 설치 여부 확인
-f <파일> <파일>을 포함하는 패키지에 대해 질문 수행
-F -f와 같지만 파일 이름을 표준 입력에서 읽음
-v 진행 과정을 메시지로 표시
-vv 진행 과정을 메시지로 표시
--nodeps 의존성 관계를 무시하고 설치
--oldpackage 구 버전으로 다운그레이드
--replacepkgs 패키지 재설치
-V verify 즉, 검증 시 사용
-a 모든 패키지 검사
-l 설치된 패키지 리스트

12. 다음 중 소스 파일로 프로그램을 설치하는 단계인 configure 작업 후에 생성되는 파일명으로 알맞은 것은?

   .config

   .configure

   make

    Makefile

 

기본적인 컴파일 순서와 생성되는 파일은 아래와 같습니다.

1) 환경설정 (Configure) => [ makefile ] 생성
2) 컴파일 (Make) => [ setup ] 생성
3) 파일 설치 (Make Install)  

configure(환경 설정) 작업 후 생성되는 파일은 makefile입니다.


13. 다음 중 온라인 기반 패키지 관리 도구로 틀린 것은?

   apt-get

   ② yum

    dpkg

   zypper

 

배포판별 패키지 관리 기법은 아래와 같습니다.

배포판 기본 패키지 관리 기법 온라인 패키지 관리 기법
레드햇 계열 RPM YUM
데비안 계열 Dpkg apt-get
수세 계열 YaST zypper

 

dpkg는 데비안 계열의 기본 패키지 관리 기법으로, 온라인 기반 패키지 관리 기법이 아닙니다.


14. 다음 중 데비안 계열 리눅스의 패키지 관리 도구로 가장 거리가 먼 것은?

   dselect

   alien

   dpkg

   ④ 울

 

울...?

dselect : 데비안 계열 리눅스 패키지를 관리하는 메뉴 시스템입니다.

alien : 확장자 .rpm 패키지 파일을 .deb로 변환하는 명령어입니다.

dpkg : 데비안 계열의 기본 패키지 관리 기법입니다.


15. vi 편집기에서 표시되고 있는 행번호를 제거할 때 사용하는 환경 설정값으로 알맞은 것은?

   set uno

   set unnu

   set unno

    set nonu

 

vi 편집기에서 행 번호를 제거할 때 :set nonu 또는 :set nonumber를 사용합니다.

( vi 편집기의 사용법에 대한 자세한 내용은 아래의 포스팅으로 )

  > [Linux] 리눅스 vi 편집기 사용법 <


16. 다음 중 가장 처음에 등장한 편집기로 알맞은 것은?

    vi

   gedit

   nano

   pico

 

해당 설명에 대한 내용은 vi 편집기에 대한 내용입니다.

리눅스 커맨드 환경에서 주로 사용하는 편집기입니다.


17. 다음 중 vi 편집기에서 모든 windows라는 문자열을 linux로 치환하는 명령으로 알맞은 것은?

   :% s/linux/windows/g

    :% s/windows/linux/g

   :% s/\<linux\>/windows/g

   :% s/\<windows\>/linux/g

 

vi 편집기에서 패턴 검색 및 교체 형식은 아래와 같습니다.

 

:% s/A/B/  ==>  A를 B로 한 번에 교체

:% s/A/B/g  ==>  A를 B로 한 번에 교체

:% s/A/B/gc  ==>  A를 B로 하나씩 교체

:1,20 s/A/B  ==>  1~20번 행에서 A를 B로 한 번에 교체

 

모든 windows라는 문자열을 linux로 한 번에 치환하기 위해서는 아래와 같이 사용합니다.

:% s/windows/linux/g 또는

:% s/windows/linux

 

( vi 편집기의 사용법에 대한 자세한 내용은 아래의 포스팅으로 )

  > [Linux] 리눅스 vi 편집기 사용법 <


18. vi 편집기 실행할 때마다 행 번호가 자동으로 표시되도록 설정하려고 한다. 다음 중 관련 설정을 저장하기 위해 생성해야 할 파일명으로 알맞은 것은?

   .virc

    .vimrc

   .viex

   .vimex

 

:set nu로 행 번호를 표시하면 임시로 적용되기에 vi 편집기를 재시작하면 행 번호가 다시 사라집니다.

vi 편집기의 설정 파일인 /etc/vimrc (~/.vimrc) 파일에 set nu를 추가하여 영구적으로 적용할 수 있습니다.

vi의 설정 파일은 .virc, vim의 설정 파일은 .vimrc입니다.


19. 다음 ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?

( ㉠ )는 워싱턴대학에서 만든 유닉스용 편집기로 윈도우의 메모장처럼 간편하게 사용하도록 만들었다. 초기 리눅스 시스템에서 사용되었으나 라이선스 문제로 인해 다시 만들어진 편집기가 ( ㉡ )이다.

   ① ㉠ vi, pico

   ② ㉠ vi, nano

   ③ ㉠ nano, pico

    pico, nano

 

pico는 워싱턴 대학의 Aboil Kasar가 개발한 유닉스 기반의 편집기입니다.

이후 GNU 프로젝트에서 nano를 개발하였습니다.


20. 다음 중 emacs 편집기를 종료하는 조합으로 알맞은 것은?

   [Ctrl]+[c] 후에 [Ctrl]+[x]

    [Ctrl]+[x] 후에 [Ctrl]+[c]

   [Ctrl]+[c] 후에 [Ctrl]+[f]

   [Ctrl]+[x] 후에 [Ctrl]+[f]

 

emacs 편집기를 종료하려면 [ Ctrl + x ]  =>  [ Ctrl + c ]를 해야 합니다.