기록공간

[리눅스 마스터 1급] 최신 기출문제 제1802회 오답노트 본문

자격증공부/리눅스마스터

[리눅스 마스터 1급] 최신 기출문제 제1802회 오답노트

입코딩 2021. 9. 7. 09:14
반응형

PART1 (1~20)

#2

* 라이브러리 :

공통으로 사용하는 기능을 별도의 모듈로 만들어 사용하므로 중복을 최소화한다. (디스크 공간의 효율성)

* 가상 메모리 : 
물리적 메모리의 용량 한계를 극복하기 위해 가상의 메모리를 할당한 후, 이를 실제 물리 메모리의 주소와 매핑하여 사용하는 방식이다. 프로그램은 가상 메모리 기법을 이용하여 고유의 메모리 공간에서 독립적으로 실행될 수 있다.
(독립적인 실행 및 메인 메모리 공간의 효율성)

 

#3

Vector Linux는 슬렉웨어 계열에 속하는 리눅스 운영체제이다.

Scientific, Oracle Linux는 레드햇 계열에 속하는 리눅스 운영체제이다.

 

#6

* $# : 스크립트에 전달되는 인자들의 개수를 담고 있다.

* $0 : 실행한 스크립트의 전체 경로명을 담고 있다.

* $1, $2, ... : 스크립트에 전달된 인자값을 순서대로 담는다.

* ${#문자열변수} : 문제열 변수에 저장된 문자열의 길이를 반환한다.

 

#7

* systemctl :
리눅스 서비스의 시작, 정지, 재시작 등을 제어하는 명령어로 CentOS 7 이후에 기본 명령으로 사용

* chkconfig : 

런레벨별 서비스의 동작 방식을 설정하고 조회하는 명령어

* ntsysv : 

텍스트 환경에서 커서를 이용하여 부팅 중 자동으로 실행되는 서비스를 설정할 수 있는 유틸리티이다. 옵션을 이용하여 특정 실행 레벨의 서비스 데몬을 설정할 수 있다.

* service :
리눅스 서비스의 시작, 정지, 재시작 등을 제어하는 명령어로 CentOS 6까지 기본 명령으로 사용된다.

 

#8

* '$(명령어)'의 형식을 이용하여 리눅스 명령어의 표준출력을 변수처럼 사용할 수 있다.

 

#10

* 데몬과 같이 서버 부팅 시마다 자동으로 실행되어야 하는 명령어는 /etc/rc.d/rc.local 에 기록하며, 부팅 시 가장 나중에 실행된다.

  • 실행 레벨 0 : 시스템 종료 모드
  • 실행 레벨 1 : 싱글(관리) 모드, 원격 로그인이 불가능하며 root 계정만 사용이 가능하다.
  • 실행 레벨 2 : 멀티유저 모드, NFS를 지원하지 않음
  • 실행 레벨 3 : 멀티유저 모드, NFS를 지원
  • 실행 레벨 4 : 사용자 지정 레벨, 일반적으로 사용하지 않음
  • 실행 레벨 5 : X 윈도우 환경의 멀티유저 모드
  • 실행 레벨 6 : 재부팅 모드

* CentOS 버전 7부터는 실행 레벨이 아닌 target 유닛이 관리한다.

 

#15

* SIGHUP : 로그아웃 혹은 모뎀 접속을 끊는다.

* SIGINT : ctrl + c를 입력하면 발생하며, 프로세스를 종료한다.

* SIGQUIT : ctrl + q를 입력하면 발생하며, 코어 덤프와 함께 프로세스를 종료한다.

* SIGKILL : 프로세스를 즉시 종료시킨다.

* SIGTERM : 소프트웨어 종료 시그널로 트래킹이 가능하다.

* SIGCONT : SIGSTOP 혹은 SIGTSTP에 의해 정지된 프로세스를 다시 실행한다.

* SIGSTOP : 정지 시그널로 프로세스를 무조건 정지 시킨다.

* SIGTSTP : ctrl + z를 입력하면 발생하며, 프로세스의 실행을 정지시킨 후 다시 실행하기 위해 대기한다.

 

#17

* ip route 명령을 사용하면 게이트웨이 주소를 확인할 수 있음

* route 명령은 게이트웨이 주소를 포함한 정보를 출력

* netstat -r 명령으로 route 명령을 대신할 수 있음

* ethtool : NIC(Network Interface Controller)의 정보를 표시하고, 전송 속도 및 상태값 등을 설정한다.

 

#19

* /etc/resolve.conf : 요청할 DNS 서버를 지정할 때 사용하는 설정 파일

* /etc/sysconfig/network : 시스템 전체에 대한 기본 게이트웨이 주소, 호스트네임, 네트워킹 연결 허용 여부를 설정

* /etc/sysconfig/network-scripts : eth0(이더넷), lo(루프백) 등 시스템에 설치된 네트워크 인터페이스의 설정 정보 파일을 저장한다.

 

PART 2 (21~60)

#23, 24

* tar 명령어의 주요 옵션

  • A(--concatenate) : 기존 압축파일에 tar 파일들을 추가(Append)한다.
  • c(--create) : 새로운 파일을 만든다. 동일한 파일이 존재하면 덮어쓴다.
  • d(--diff) : 압축 파일과 파일 시스템의 차이를 비교한다.
  • r(--append) : 기존 tar 파일의 마지막에 파일을 추가한다.
  • t(--list) : tar 파일 내 압축되어 있는 파일 목록을 출력한다.
  • u(--update) : 파일 날짜를 기준으로, tar 파일 내 압축되어 있는 파일과 비교하여 더 최신의 파일일 경우 업데이트한다.
  • x(--extract) : 압축된 파일을 압축해제한다.

* tar 명령어의 부가 옵션

  • v(--verbose) : 진행 중인 파일 정보를 표시한다.
  • f(--file) : 파일명을 지정한다.
  • z(--gzip) : .tar.gz 형식으로 압축하거나 압축해제한다.
  • j(--bzip2) : .tar.bz2 형식으로 압축된 파일을 읽거나 압축해제한다.
  • J : .tar.xz 방식으로 압축된 파일을 읽거나 압축해제한다.
  • Z : Compress를 이용하여 압축하거나 압축해제한다.
  • G : 예전 GNU 형식으로 증분 백업을 수행한다.
  • g : 새로운 GNU 형식으로 증분 백업을 수행한다.

 

#27

* /etc/skel :

사용자 계정이 생성될 때 해당 디렉터리의 내용들이 사용자의 홈디렉터리로 복사된다. 대표적으로 .bash_logout, .bash_profile, .bashrc가 있다.

* /etc/default/useradd : 

useradd 명령 실행 시 참조하는 기본 정보 파일

 

#28

* passwd 명령의 주요 옵션

  • -l : Lock. 계정을 잠금으로 로그인 불가능하게 설정
  • -u : Unlock. 계정을 잠금 해제하여 로그인이 가능하게 설정
  • -S : 계정 정보를 자세하게 출력
  • -d : 계정에 설정된 암호를 제거하여 패스워드 없이 로그인이 가능하게 설정
  • -n : 패스워드 변경 후 최소한 사용해야 하는 날짜 수를 지정
  • -x : 패스워드의 최대 유효기간을 지정
  • -w : 패스워드 만료 전 경고 날짜를 지정
  • -i : 패스워드 만료 후 로그인이 불가능해질 때까지의 기간을 지정
  • -e : 다음 로그인 시 패스워드를 무조건 변경하도록 강제

#30 

* 디렉터리에 write 권한이 없다면 디렉터리 안에 파일에 write 권한이 있어도 파일 삭제가 불가능하다.

 

#34

* rpm 주요 옵션

  • -i : 동일한 패키지가 설치되어 있지 않은 경우, 패키지를 새로 설치한다.
  • -h : 설치 진행 상황을 # 문자로 표시한다.
  • -U : 패키지 업그레이드, 기존에 패키지가 없다면 새로 설치한다.
  • --force : 기존 패키지가 설치되어 있더라도 강제로 설치한다.
  • -e : 패키지 삭제
  • --nodeps : 패키지 설치, 업데이트 삭제 시 의존성을 점검하지 않는다.
  • --test : 실제 작업을 수행하지 않고 문제점을 점검

 

#37

* info : 명령어에 대한 상세한 설명을 제공하는 명령어

* stat : i-node 번호, UID 및 GID, 링크 수, 접근시간, 수정시간, 변경시간을 확인할 수 있음

* touch : 파일의 시간 정보를 현재 시간으로 변경

 

#39

* w : 로그인한 사용자와 사용자가 수행 중인 작업 출력

* who : 로그인한 사용자 로그인명, 터미널, 로그인 시간 등을 출력

* whoami : 로그인한 사용자가 현재 갖고 있는 권한의 ID를 출력

* lslogins : 시스템 사용자의 정보를 출력

 

#49

* alsamixer는 여러 개의 사운드를 믹싱하는 GUI 프로그램이다.

 

#50

* scanadf : 자동 문서 공급 장치가 장착된 스캐너에서 다수의 사진을 스캔할 때 사용하는 명령어

* xcam : GUI 기반으로 평판 스캐너나 카메라로부터 이미지를 스캔해 주는 도구

* sane-find-scanner : USB 혹은 SCSI 스캐너와 관련 장치 파일을 찾아주는 명령어

 

#53

* dump : 파일 시스템 전체를 백업 및 복구할 수 있는 명령어

* rsync : 두 대의 호스트에 저장된 파일을 서로 동기화하는 서비스

* cpio(copy in and out) : 대상 파일들을 복사하거나 하나의 파일로 아카이빙 혹은 아카이빙 된 파일을 복원할 수 있다. 

 

#55

* setfacl :

파일과 디렉터리의 ACL(Access Control List)를 관리한다. ACL은 리눅스 시스템의 자원에 사용자가 접근할 수 있는 권한을 설정하고 관리하는 기능이다.

* gpg :

OpenPGP를 이용하여 암호화 사인을 제공하는 명령어

* chattr :

파일과 디렉터리의 속성을 변경하는 명령어

* chcon : 
SELinux에서 파일의 보안속성을 변경하는 명령어

 

#56

* dd : 데이터를 블록 단위로 변환 혹은 복사하는 명령어로 파티션이나 디스크 단위 백업에 사용할 수 있다.

 

#57

* Nessus : 시스템 취약점을 확인할 수 있는 취약점 스캐너 도구

* GnuPG : 공개키 방식의 암호화 기법을 사용하여 안전한 통신을 지원

* SELinux : 강제 접근 제어(MAC)를 포함한 접근 제어 보안 정책을 지원하는 리눅스 커널 보안 모듈

 

PART 3 (61~100)

#61

/etc/dhcp/dhcpd.conf 파일은 DHCP 데몬인 dhcpd가 사용하는 설정 파일이며, DHCP의 로그 메시지를 다른 곳으로 전달하려면 log-facility 항목을 이용한다.

 

#62

삼바 서버는 /etc/samba/smb.conf를 환경설정 파일로 이용하며, 각 공유 폴더(항목)별로 설정값을 지정한다.

* 삼바의 공유 폴더의 주요 설정 옵션

  • [디렉터리 이름] : '[ ]' 사이에 공유 폴더 이름을 지정
  • comment : 공유 폴더에 대한 설명
  • path : 공유 디렉터리의 절대경로를 지정
  • read only = yes : 읽기만 가능하도록 설정
  • write only = yes : 쓰기 가능하도록 설정
  • write list = [사용자명] : 쓰기 가능한 사용자를 지정
  • valid users = [사용자명] : 접근 가능한 사용자를 지정하며 별도로 지정하지 않은 경우 전체 사용자가 접근 가능
  • public = no : 개인 사용자만 사용할 수 있도록 설정
  • browseable = no : 이용 가능한 공유 리스트에 표시되지 않도록 설정
  • create mask = 값 : 파일 생성시 사용되는 기본 모드를 지정
  • follow symlinks = no : 심볼릭 링크를 따르지 않도록 설정하여 잠재적인 보안위협을 제거

 

#63

LDAP(Lightweight Directory Access Protocol)는 디렉터리 서비스를 조회하고 수정하는 TCP 기반 응용 프로토콜이다.

 

#65

프록시 서버인 squid는 /etc/squid/squid.conf를 환경설정 파일로 이용한다.

* 주요 옵션

  • cache_dir [옵션] : 캐시가 저장될 위치를 나타낸다.
  • http_port [포트번호] : 사용할 포트 번호
  • acl [별칭] src [IP 주소 대역] : acl로 별칭을 만든 후 접근 권한을 설정, http_access allow와 http_access deny를 통해 설정
  • cache_mem [크기] : 캐시의 크기를 설정
  • cache_log [로그 파일경로] : 로그 파일을 지정

 

#68 

아파치 웹 서버에서 사용자별 홈페이지를 이용하려면 'mod_userdir.so'를 사용하고 관련 정보를 설정한다.

* httpd.conf 내용 중 'LoadModule userdir_module modules/mod_userdir.so 항목을 활성화(주석 처리 해제)한다. 

* httpd.conf 내용 중 'Include conf/extra/httpd-userdir.conf' 항목을 활성화 한다.

* httpd-userdir.conf 내용 중 'UserDir [디렉터리명]' 항목을 수정한다.

 

#71

* ypbind : 바인드 정보를 관리하여 NIS 서버와 클라이언트를 연결

* yppasswdd : NIS 데이터베이스의 암호를 업데이트하기 위한 데몬

* ypxfrd : NIS 서버와 NIS 클라이언트 간의 맵핑 속도를 높여주는 데몬

* rpcbind : RPC 서비스를 사용하는 프로그램에 고유번호를 부여하고 서비스를 관리

 

#72

* /etc/yp.conf : NIS 바인드 정보를 관리하는 ypbind의 환경설정 파일

* /etc/ypserv.conf : ypserv를 위한 옵션을 저장

 

#73

* smbclient : 'smbclient [옵션] [호스트명]' 형식을 가지는 명령어로 윈도우 공유 폴더를 확인하고 접근할 수 있다.

* smbstatus : 삼바의 접속 정보를 확인하는 명령어

* testparm : 삼바의 설정 정보를 확인하는 명령어

* nmblookup : 삼바 서버의 NetBIOS 이름으로 IP 주소를 조회할 수 있는 명령어

 

#74

* rpcinfo : 메모리에 로딩된 RPC 기반 서비스 테이블을 관리하는 명령어. 서비스 테이블이란 프로그램과 포트번호를 매핑한 테이블을 의미한다.

* exportfs : NFS 서버의 익스포트된 디렉터리 정보, 공유 목록을 관리하는 명령어

* showmount : NFS 서버에 익스포트된 정보를 확인하는 명령어

* nfsstat : NFS 및 RPC 연결에 대한 통계 정보를 표시하는 명령어

 

#75, 77

* /etc/aliases : 메일의 별칭 혹은 특정 계정으로 수신한 이메일을 다른 계정으로 전달하도록 설정하며 보통 여러 사람에게 전달할 때 사용한다.

* /etc/mail/virtusertable : 가상의 메일 계정으로 들어오는 메일을 특정 계정으로 전달하는 정보를 설정

* /etc/mail/local-host-names :  sendmail에서 수신할 메일의 도메인과 호스트, 즉 메일 수신자를 설정하며 sendmail을 다시 시작하여 적용한다.

* /etc/mail/sendmail.mc : 'm4 sendmail.mc > sendmail.cf' 와 같이 사용하여 sendmail.cf 파일을 생성한다.

* /etc/mail/access : 스팸 메일 방지 등을 위해 특정 IP 혹은 도메인으로부터 발송된 메일을 차단하는 데 사용한다.

'makemap hash /etc/mail/access < /etc/mail/access' 와 같은 방식으로 /etc/mail/access.db 에 적용한다.

* .forward : 특정 사용자가 들어오는 메일을 외부의 다른 메일로 전송하고 싶을 경우 생성하는 파일

* mailq : 메일 큐의 내용을 표시하는 명령어이다.

 

#78

DNS 서버의 리버스 존을 생성하여 IP 주소에 대한 도메인 정보 조회를 제공할 수 있다.

 

#82

* NFS(Network File System) : 원격 호스트의 공유된 경로를 로컬에서 사용할 수 있도록 지원하는 서비스

* NIS(Network Information Service) : 호스트명, 사용자명, 사용자 암호 등과 같은 시스템 정보를 검색하고 관리하기 위한 서비스

* LDAP(Lightweight Directory Access Protocol) : 디렉터리 서비스를 조회하고 수정하는 TCP 기반 응용 프로토콜

* Actice Directory : MS 윈도우 운영체제의 서비스로 LDAP 을 기반으로 인증 서비스를 제공한다.

 

#83

* ypwhich : NIS 서버 이름 출력

* yppasswd : NIS 데이터베이스 암호 변경

* yptest : NIS 도메인명, 맵 파일 정보, 계정 정보 등을 확인

* ypcat : NIS 데이터베이스의 모든 키의 값을 표시한다. 'ypcat hosts.byname'으로 호스트 관련 정보를 확인할 수 있고, 'ypcat passwd.byname'으로 사용자 관련 정보를 확인할 수 있다.

 

#84

/etc/vsftpd/ftpusers에 등록된 모든 계정은 접속 차단된다. vsftpd의 설정파일인 /etc/vsftpd/vsftpd.conf의 항목 중 'userlist_enable=YES'로 설정하면 ftpusers와 함께 user_list에 등록된 모든 계정도 접속 차단된다.

 

#88

* bind : DNS 서버의 기능을 제공하는 대표적인 소프트웨어로 'yum install' 명령어를 이용하여 설치할 수 있다.

* named : bind의 데몬 이름이다.

 

#89

zone 파일은 도메인 이름과 IP 주소 혹은 관련 리소스 간 매핑을 포함하고 리소스 레코드로 구성된다. 리눅스는 /var/named 에 zone 파일을 저장하며 named 데몬 실행시 참고한다.

 

#91

* VDI(Virtual Disk Image) : 버추얼박스에서만 사용 가능한 전용 디스크 이미지 형식

* VHD(Virtual Hard Disk) : 버추얼박스, Hyper-V, Xen에서 사용할 수 있는 디스크 이미지 형식 

* VMDK(Virtual Machine Disk) : 버추얼박스, VMware Player에 사용할 수 있는 디스크 이미지 형식

* VMC : Microsoft Virtual PC에서 사용하는 가상머신 설정 파일 형식

 

#92

xinet 방식은 standalone 방식과 비교하여 사용자 요청에 대한 처리 시간이 느리지만, 다양한 서비스를 제한된 시스템 자원으로 운영하기에 효율적이다.

* CentOS 7의 경우 CentOS 6까지 xinetd 방식으로 이용하던 많은 서비스들이 단독 데몬으로 전환되거나 systemd에 의한 관리방식으로 통합되었다.

* systemd 방식은 socket 기능을 통해 효율적으로 메모리를 관리 할 수 있으며, 이에 따라 기존 xinetd를 통해 제공하던 rsync, telnet 등의 서비스가 systemd 방식으로 통합되었다.

 

#94

* NTP(Network Time Protocol)는 NTP 서버를 이용하여 시간을 동기화한다.

* ntpdate : ntpdate [서버주소] 명령 옵션으로 원격 서버와 시간을 동기화한다. -d 옵션을 이용하면 원격 서버와 시간 차이를 확인할 수 있다.

* date : 리눅스의 날짜와 시간을 확인하는 명령어

* rdate : 원격지의 타임서버에서 시간 정보를 가져와 로컬 시스템의 시간과 동기화하는 명령어

* ntpq : NTP 질의 명령어로 -p 옵션으로 연결된 서버의 상태를 출력

 

#96

* iptable : ip 차단 및 허용을 관리하는 명령어이다.

* CentOS 7에서는 firewalld를 기본 방화벽으로 사용하고 iptables 대비 편리한 사용성을 제공한다.

* 주요 옵션 항목

  • -A : 새로운 정책을 가장 마지막에 추가/등록
  • -I : 지정한 라인번호에 추가
  • -D : 정책을 제거
  • -R : 정책을 수정

* filter 테이블 체인

  • INPUT : 호스트를 목적지로 유입되는 패킷
  • OUTPUT : 호스트를 출발지로 하여 나가는 패킷
  • FORWARD : 라우터로 사용되는 호스트를 통과하는 패킷, 즉 호스트 컴퓨터가 목적지가 아닌 패킷

 

반응형
Comments