Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

쟝이의 세상

리눅스마스터 오답노트 2️⃣ 본문

자격증

리눅스마스터 오답노트 2️⃣

zyangee 2024. 9. 3. 01:25
3. 다음 설명에 해당하는 라이선스로 알맞은 것은?
해당 라이선스가 적용된 소프트웨어를 다운로드하여 부분 혹은 전체를 개인적 또는 상업적 목적으로 이용할 수 있다. 재배포 시에도 소스 코드 또는 수정한 소스코드를 포함하여 반드시 공개하도록 요구하지 않는다. 다만 재배포할 경우에 해당 라이선스를 포함시키고 관련 소프트웨어임을 명확히 밝혀야 한다.
1. GPL
2. MPL
3. BSD
4. Apache

[오픈 라이선스]

  무료 이용 가능 배포 허용 가능 소스코드 취득 가능 소스코드 수정 가능 2차적 저작물 재공개 의무 독점 SW와 결합 가능
GPL o o o o o x
LGPL o o o o o o
MPL o o o o o o
BSD o o o o x o
Apache o o o o x o

Apache

- Apache 라는 이름에 대한 상표권을 침해하지 않아야 한다.

- SW를 배포하는 경우 저작권 표시, 보증 책임이 없다는 내용 표시

- 수정 프로그램에 대한 소스코드의 공개를 요구하지 않기 때문에 상용 SW에 무제한 사용 가능


5. 다음 설명에 해당하는 클라우드 서비스로 알맞은 것은?
업무처리에 필요한 서버, 데스크톱 컴퓨터, 스토리지와 같은 IT 하드웨어 자원을 일정 기간 동안에만 사용하려고 한다.
1. IaaS
2. DaaS
3. PaaS
4. SaaS

IaaS : 서비스형 인프라

-> 네트워크, 스토리지(저장 공간), 서버(+가상화)

PaaS : 서비스형 플랫폼

-> IaaS 서비스의 핵심 인프라 호스팅, 운영 체제(O/S)와 미들웨어까지 제공

(미들웨어 : 운영체제와 애플리케이션 사이에서 운영체제가 제공하지 않는 기능을 제공하는 소프트웨어)

SaaS : 서비스형 소프트웨어

-> IaaS(인프라)와 PaaS(미들웨어) 뿐 아니라 애플리케이션 형태로 완전한 소프트웨어 제공


8. 다음 설명에 해당하는 내용으로 알맞은 것은?
원래의 프로세스를 새로운 프로세스로 대체하는 형태로 호출한 프로세스의 메모리에 새로운 프로세스의 코드로 덮어씌워 버린다.
1. exec
2. fork
3. inetd
4. standalone

하나의 프로세스가 다른 프로세스를 실행하기 위한 시스템 호출 방법 - exec, fork

- fork : 새로운 프로세스를 위해 메모리를 할당받아 복사본 형태의 프로세스를 실행하는 형태로 기존의 프로세스는 그대로 실행되어 있다.

- exec : 원래의 프로세스를 새로운 프로세스로 대체하는 형태로 호출한 프로세스의 메모리에 새로운 프로세스의 코드를 덮어씌워 버린다.


9. 다음 ㉠ 및 ㉡에 들어갈 명령어로 알맞은 것은?
$ user1 = lin
$ ( ㉠ ) | grep ^user.
user1 = lin
$ ( ㉡ ) | grep ^user.
$ export user2 = joon
$ ( ㉠ ) | grep ^user.
user1 = lin
user2 = joon
$ ( ㉡ ) | grep ^user.
user2 = joon
1. ㉠ set ㉡ unset
2. ㉠ set ㉡ env
3. ㉠ env ㉡ set
4. ㉠ env ㉡ unset

set : Bash의 셸 변수를 관리하는 명령어

-> 'set NAME=VALUE' 또는 'NAME=VALUE' 형식 사용, 인자 없이 set 명령어만 실행하면 현재 설정된 값 출력

unset : set으로 설정한 값 제거

env : 운영체제의 환경변수를 관련하는 명령어

-> 'env NAME=VALUE' 로 설정, 인자 없이 env 명령만 실행하면 현재 설정된 환경변수 값을 출력

export : 셸 변수를 환경변수로 사용할 수 있도록 하는 명령어

 

  • 지문의 'user1 = lin'은 set 명령어를 이용한 설정 방식이다.
    'set | grep ^user.' 명령을 이용해 NAME이 user. 으로 시작하는 설정 항목을 출력한다.
  • 지문의 '( ㉡ ) | grep ^user.'와 마지막의 '( ㉡ ) | grep ^user.'에서 보면
    아무것도 출력되지 않는 것과 user1=lin이 없는 user2만 출력되는 것으로 보아 unset이 아닌 env 명령어임을 알 수 있다.
  • 지문의 'export user2=joon'은 셸 변수로 생성한 후 이를 환경변수로 사용할 수 있도록 한다. 

10. 다음 (    ) 안에 출력되는 내용으로 알맞은 것은?
# ls
joon.txt lin.txt
#echo $?
(     )
1. ?
2. 0
3. 1
4. 2

echo $! : 마지막으로 백그라운드에서 실행된 명령어의 PID 값을 출력

echo $? : 마지막으로 종료된 명령어의 종료 상태 (정상적인 종료 - 0 / 비정상적인 종료 - 1또는 2)

echo $$ : 현재 셸의 PID 값을 출력


11. 다음과 같은 허가권(Permission)을 갖는 파일들이 위치하는 디렉터리로 가장 알맞은 것은?
brw-rw----
1. /boot
2. /dev
3. /proc
4. /var

지문에 나온 파일 유형은 블록 디바이스이다.

-> 하드웨어 장치에 대한 장치 파일을 저장하고 있는 dev 디렉터리

/boot : 커널 파일이나 부팅이 필요한 파일이 위치

/proc : 메모리에 존재하는 모든 프로세스들이 파일 형태로 매핑된다. 이 디렉터리를 통해 프로세스의 상태 정보, 하드웨어 정보, 기타 시스템 정보를 확인할 수 있다.

/var : 로그, 스풀 파일 등 임시로 생성되거나 상황에 따라 생성되거나 삭제될 수 있는 데이터가 보관된다.


13. 명령1이 성공적으로 수행되면 명령2가 실행되도록 하려고 한다. 다음 (   ) 안에 들어갈 내용으로 알맞은 것은?
# 명령1 (      ) 명령2
1. ;
2. |
3. ||
4. &&

메타문자

; : 그룹 명령 기능을 위해 사용하며 순차적으로 명령어들을 실행한다.

| : 파이프 기능을 위해 사용한다.

   (파이프 기능 : 프로그램의 출력 결과를 또 다른 프로그램의 입력으로 전달할 수 있는 일종의 프로세스 간 통신 기술)

|| : 그룹 명령 기능을 위해 사용하며 앞 명령어의 실행 결과가 실패하면 다음 명령어를 실행한다.

&& : 그룹 명령 기능을 위해 사용하며 앞 명령어의 실행 결과가 성공하면 다음 명령어를 실행한다.


18. 다음 중 프로토콜에 대한 설명으로 틀린 것은?
1. ISO, ANSI, ITU-T는 대표적인 프로토콜의 제정 기관이다.
2. 프로토콜의 기능으로는 흐름제어, 오류제어, 동기화, 캡슐화 등이 있다.
3. 프로토콜은 구문(Syntax), 의미(Semantics), 순서(Timing)로 구성되어 있다.
4. 대표적인 프로토콜인 TCP/IPISO에서 제정하였다.

프로토콜 : 컴퓨터나 통신 장비 사이에 메시지를 주고 받는 양식 혹은 규칙의 체계

- 구성 : 형식(Syntax), 의미(Semantic), 타이밍(Timing)

프로토콜 기능 설명
에러제어(error control) 데이터 전송 중 에러 검출 및 에러 정정을 정의
캡슐화(encapsulation) 통신 계층상에서 각 계층마다의 특정 제어 정보를 정의
연결제어(connection control) 연결 지향 통신에서 연결의 설정, 데이터 송수신, 연결 종료의 절차를 정의
순서제어(sequence control) 패킷의 순서의 역전과 중복 패킷 발생을 방지
흐름제어(flow control) 보낼 데이터의 양을 조절
혼잡제어(congestion control) 대기하고 있는 패킷의 양을 조절하여 패킷이 혼잡해지지 않도록 조절
동기화(synchronization) 데이터 송신 측과 수신 측의 타이머 값, 윈도우 크기 등 매개변수 정보를 일치하는 방법을 제공
주소지정(addressing) 여러 개체 중 하나의 개체를 식별할 수 있는 방법을 제공
단편화 및 재조정(fragmentation and reassembly) 데이터를 분할 전송하고 다시 재조립하는 방법을 제공
데이터의 형식화(data formatting) 전송하는 데이터의 형식이 무엇인지 방법을 제공

4번의 TCP/IP는 인터넷 표준화기구(IETF: Internet Engineering Task Force)에서 제정하였다.


22. /etc/shadow 파일에서 계정 만기일 영역에 해당하는 필드 순서로 알맞은 것은?
1. 3번째
2. 7번째
3. 8번째
4. 9번째

/etc/shadow : 사용자 패스워드를 해시 알고리즘으로 암호화한 값과 패스워드와 연관된 여러 속성을 담고 있는 파일

-> [사용자명] : [비밀번호] : [마지막 변경일] : [패스워드 최소 사용일] : [패스워드 최대 사용일] : [패스워드 만료 경고일] : [유예기간] : [만료일]

계정 만기일 영역에 해당하는 필드는 8번째 필드이다.


23. 소스 파일을 이용해서 특정 프로그램을 설치할 때 관련 옵션을 확인하려고 한다. 다음 (      ) 안에 들어갈 내용으로 알맞은 것은?
[root@www httpd-2.4.41] # ./configure (       )
1. --option
2. --options
3. --menu
4. --help

[소스 설치 주요 3단계]

configure -> make -> make install

 

- configure : 소스 프로그램 환경 설정을 하는 스크립트 -> Makefile을 만든다.

- make : Makefile 파일을 읽음으로써 소스코드에서 실행 가능한 프로그램과 라이브러리를 자동으로 빌드하는 자동화 도구

- make install : 컴파일된 실행 파일을 지정한 속성으로 지정된 디렉터리에 설치

 

./configure --help : configure로 지원되는 옵션 정보 출력

./configure --prefix=/usr/local/apache : 설치되는 디렉터리를 /usr/local/apache로 설정


28. 다음 중 joon이라는 아이디를 lin으로 변경하는 명령으로 알맞은 것은?
1. usermod -l joon lin
2. usermod -l lin joon
3. usermod -n joon lin
4. usermod -n lin joon

usermod : 사용자의 셸, 홈 디렉터리, 그룹, UID, GID 등을 변경하는 명령어

-l : 사용자 아이디를 변경 (--login)

ex) usermod -l yuloje posein : posein이라는 아이디를 yuloje로 변경


29. 다음 중 특수 권한인 Set-UID, Set-GID, Sticky Bit가 부여된 파일이나 디렉터리로 틀린 것은?
1. /tmp
2. /bin/su
3. /etc/shadow
4. /usr/bin/passwd

Set-UID : 8진수로 4000, 실행 순간만 대상 파일의 소유자 권한을 갖게 된다.

Set-GID : 8진수로 2000, 실행 순간만 대상 파일의 소유자 그룹 권한을갖게 된다.

Sticky Bit : 8진수로 1000, 공용 디렉터리와 같은 특정한 디렉터리를 누구나 사용할 수 있도록 한다.

 

/tmp : 임시 데이터가 저장되는 디렉터리, Sticky Bit가 부여됨

/bin/su : 사용자 전환에 사용하는 명령어로 정책에 따라 Set-UID 혹은 Set-GID가 부여됨

/usr/bin/passwd : 사용자가 로그인할 때 참조하는 파일, root가 소유자, Set-UID가 부여됨

/etc/shadow : 이 파일은 오직 root만 접근할 수 있다.


30. 다음은 스왑 파일을 생성하는 단계의 일부이다. (       ) 안에 들어갈 명령어로 알맞은 것은?
# (       ) if=/dev/zero of=/swap-file bs=1k count=1024000
1. dd
2. mkswap
3. swapon
4. swapoff

[스왑 파일 생성하기]

1. dd 명령어를 사용하여 스왑 파일 생성

-> 1048576 블록으로 구성된 /swapfile을 생성한다. 블록 한 개의 크기는 1024바이트이다.

$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576

 

2. 스왑 파일의 허가권 설정하기

-> 스왑 파일은 루트 사용자만 읽고 쓰기가 가능하도록 허가권을 설정한다.

$ sudo chmod 600 /swapfile

 

3. 스왑 파일 초기화

-> 스왑 역할을 수행할 수 있도록 지정한 파일을 초기화한다.

$ sudo mkswap /swapfile

 

4. 스왑 파일을 시스템에 인식

-> 시스템에 새로운 스왑 파일을 등록한다.

$ sudo swapon /swapfile

 

5. 스왑 상태 확인하기

-> swapon -s 옵션을 사용하여 스왑 상태를 확인한다.

$ sudo swapon -s
Filename		Type			Size		Used		Priority
/dev/dm-1		partition		1572860		0		-1
/swapfile		file			1048572		0		-2

 

6. 스왑 파일 설정을 영구적으로 저장

-> /etc/fstab 파일에 스왑 설정을 추가한다. 시스템을 리부팅해도 스왑 설정을 유지된다.

/swapfile swap swap defaults 0 0

32. 다음 중 온라인 기반 패키지 관리 기법으로 가장 거리가 먼 것은?
1. yum
2. yast
3. apt-get
4. zypper

yum : 레드햇 계열 패키지 관리도구

apt-get, apt, aptitude : 데비안 계열 패키지 관리도구 

zipper : SUSE 계열 패키지 관리도구


38. 다음 중 ihduser 계정이 사용하고 있는 디스크의 총 사용량을 확인하는 명령으로 가장 알맞은 것은?
1. du -sh ihduser
2. du -sh ~ihduser
3. df -sh ihduser
4. df -sh ~ihduser

df : 파일 시스템 전체 크기, 가용 용량 등 파일 시스템에 대한 자세한 정보 출력

옵션 설명
-h 1K, 234M, 2G와 같이 용량의 단위를 표시
-k 킬로바이트(KB) 단위로 출력
-m 메가바이트(MB) 단위로 출력
-T 파일 시스템의 유형을 출력
-i 블록 사용량 대신에 아이노드의 정보 출력

 

du : 디렉터리 또는 파일들이 차지하는 공간 정보 출력

옵션 설명
-h 1K, 234M, 2G와 같이 사람이 읽을 수 있는 형식으로 프린트
-b 실제 프린터에 추가가 필요
-k 킬로바이트 단위로 출력
-m 메가바이트 단위로 출력
-a 디렉터리에서 존재하는 모든 파일에 대한 각각의 크기를 보여줌
-s 지정한 옵션의 출력 결과에 대한 합계를 보여줌

ex) du -shm ~francis

: francis 사용자의 총 사용량을 메가바이트 단위로 출력한다.


40. 다음 중 특정 그룹의 그룹 관리자를 지정할 때 사용하는 명령으로 알맞은 것은?
1. grpconv
2. newgrp
3. gpasswd
4. grpck

grpconv : /etc/gshadow 파일에서 그룹의 패스워드를 관리하도록 설정

grpck : 사용자 관련 파일 /etc/group과 /etc/gshadow를 점검

-> 각 그룹의 필드 개수 검사, 그룹 중복 유무 검사, 유효한 그룹 여부 검사, 유효한 GID 여부 검사, 그룹 멤버와 관리자 검사

newgrp : 사용자가 일시적으로 1차 그룹을 변경할 때 사용

gpasswd : 그룹의 패스워드를 설정하거나 그룹 관리자를 지정하는 명령


41. 다음 중 새롭게 생성된 파티션을 /etc/fstab 파일에 등록하는 형식으로 알맞은 것은?
1. /dev/sdb1 /home2 ext4 default 1 1
2. /dev/sdb1 /home2 ext4 defaults 1 1
3. /home2 /dev/sdb1 ext4 default 1 1
4. /home2 /dev/sdb1 ext4 defaults 1 1

/etc/fstab : 파일 시스템에 대한 정보를 담고있는 파일. 부팅 시에 마운트할 파티션 정보가 기록되어 있다.

 

<fstab의 필드 구성>

필드 설명
첫 번째 장치명이 기록되는 영역
두 번째 마운트될 디렉터리(mount point)
세 번째 파일 시스템의 유형
ex) xfs, swap, ext4, nfs 등
네 번째 마운트될 때의 옵션
ex) defaults, uquota, gquota, acl 등
다섯 번째 dump 명령을 통한 백업 시 레벨 덤프 사용주기 결정하는 부분
0이면 dump 사용안함, 1이면 매일 수행, 2이면 이틀에 한 번 수행
여섯 번째 부팅 시 파일 시스템을 점검하는 fsck 명령의 순서 정하기
1은 첫번째로 점검, 2는 두번째로 점검, 0은 부팅 시에 해당 파일 시스템은 검사하지 않음

44. 다음 설명에 해당하는 것은?
리눅스 및 유닉스 계열 운영체제에서 사운드를 만들고 캡처하는 인터페이스로 시스템 콜(POSIX read, write, ioctl 등)에 기반을 두고 있다.
1. OSS
2. CUPS
3. SANE
4. ALSA

OSS(Open Sound System) : 리눅스 및 유닉스 계열 운영체제의 사운드를 만들고 캡처하는 인터페이스

ALSA(Advanced Linux Sound Architecture) : 리눅스 커널의 구성 요소 중 하나. 사운드 카드를 자동으로 구성하게 하고 다수의 사운드 장치 관리를 목적으로 한다.


55. 다음 중 rsync의 특징으로 가장 거리가 먼 것은?
1. 레벨을 지정하여 증분 백업이 가능하며, 하드 링크 복사가 가능하다.
2. 기본적으로 ssh나 rsh를 이용하여 전송하며, 다른 프로토콜 접속을 지원한다.
3. 이전에 받은 백업본을 삭제하고, 원본과 항상 똑같이 백업이 되도록 설정이 가능하다.
4. 데이터를 압축하여 전송이 가능하며 심볼릭 링크나, 심볼릭 링크가 참고하고 있는 파일도 복사가 가능하다.