[리눅스마스터]제1702회 리눅스마스터 1급 2차 시험 단답식 풀이 3
7. 다음 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.
# ls /var/log/( ① )
# ( ② )
<조 건>
- ① : 로그인 실패를 기록하는 바이너리 타입의 로그파일이다.
- ② : ① 로그파일에 기록된 내용을 확인하는 명령어로, 로그인 실패 정보를 출력해 준다.
로그명 | 내용 | 로그경로 | 명령어 | 비고 |
utmp | 현재 로그인한 사용자의 정보 | /var/run/utmp | finger,w,who | 명령어로 확인 |
wtmp | 성공한 로그인/로그아웃 시스템 booting/shutdown 정보 |
/var/log/wtmp | last, last -F | 명령어로 확인 |
lastlog | 마지막으로 성공한 로그인 기록 | /var/log/lastlog | lastlog, finger | lastlog -u [계정명] lastlog -t [일수] |
btmp | 실패한 로그인 시도에 대한 기록 | /var/log/btmp | lastb, last -f btmp | 명령어로 확인 |
acct/pacct | 사용자가 입력한 명령어, 터미널 종류, 프로세스 시작시간 등을 기록 | lastcomm | 명령어로 확인 | |
secure | 사용자/그룹 생성, 삭제, 로그인 등 사용자 인증에 대한 정보 기록 | /var/log/secure | 원격 접속 기록, su 명령어 수행 내역, xinetd 인증 기록 | |
message | 시스템 운영에 대한 전반적인 메시지 기록 | /var/log/message | tcpwrapper, snort 등의 수행 내역 기록 | |
dmesg | 리눅스가 부팅될 때 출력되는 메시지 기록 | /var/log/dmesg | dmesg | 텍스트 파일 |
boot.log | 리눅스가 부팅될 때 파일시스템, 서비스 데몬 체크한 정보 기록 | /var/log/boot.log | ||
Xferlog | FTP 로그 파일 | /var/log/xferlog | FTP 사용한 내용을 상세하게 기록 |
[root@server1 ~]# lastb
btmp begins Thu Apr 7 07:47:08 2022
① btmp
② lastb
8. 다음 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.
# ( ① ) ( ② ) -f /var/log/messages 'Hello, World!'
<조 건>
- 명령어는 root 사용자 계정으로 수행한다.
- 명령어를 이용하여 /var/log/messages 파일에 문자열을 추가한다.
- 'Hello, World!'이 로그파일에 기록될 때 같은 라인에 프로세스 아이디도 기록되도록 한다.
- 각각의 괄호에는 하나의 명령어 또는 하나의 옵션만 기입한다.
logger : 임의의 메시지를 생성 시키는 역활
-i : 각 라인에 logger 프로세스의 PID를 같이 기록
-s : 표준 에러 메시지도 같이 기록
-f : 지정한 파일에 로그를 기록
-p : 우선순위(priority)도 같이 기록
[root@server1 ~]# logger -help
Usage:
logger [options] [message]
Options:
-T, --tcp use TCP only
-d, --udp use UDP only
-i, --id log the process ID too
-f, --file <file> log the contents of this file
-h, --help display this help text and exit
-n, --server <name> write to this remote syslog server
-P, --port <number> use this UDP port
-p, --priority <prio> mark given message with this priority
-s, --stderr output message to standard error as well
-t, --tag <tag> mark every line with this tag
-u, --socket <socket> write to this Unix socket
-V, --version output version information and exit
① logger
② -i
9. /var/log/messages 파일을 안전하게 보호하기 위하여 파일의 기본권한 이외의 특별한 속성을 추가하고자 할 때 다음 ( 괄호 )안에 들어갈 내용으로 알맞은 명령과 옵션을 적으시오.
# ( ① ) ( ② ) /var/log/messages
<조 건>
- /var/log/messages 파일을 삭제할 수 없다.
- /var/log/messages 파일은 로그를 기록하기 위해 추가가 가능하여야 한다.
- /var/log/messages 파일에 기존 속성을 그대로 유지하고 새로운 조건만 추가하려 한다.
- ① 명령어를 적는다.
- ② 조건에 맞는 옵션을 적는다.
- 각각의 괄호에는 하나의 명령어 또는 하나의 옵션만 기입한다.
chattr : 파일 속성 관리 명령어 / + 추가 / - 제거 / = 지정
덧붙이기만 가능 : a
atime 업데이트 안함 : A
압축 : c
Copy-on-write 사용안함 : C
변경불가 : i
데이터 저널링 : j
안전 삭제 : s
삭제불가 : u
DESCRIPTION
chattr changes the file attributes on a Linux file system.
The format of a symbolic mode is +-=[acdeijstuACDST].
The operator `+' causes the selected attributes to be added to the existing attributes of the files; `-'
causes them to be removed; and `=' causes them to be the only attributes that the files have.
The letters `acdeijstuACDST' select the new attributes for the files: append only (a), compressed (c),
no dump (d), extent format (e), immutable (i), data journalling (j), secure deletion (s), no tail-merg‐
ing (t), undeletable (u), no atime updates (A), no copy on write (C), synchronous directory updates (D),
synchronous updates (S), and top of directory hierarchy (T).
The following attributes are read-only, and may be listed by lsattr(1) but not modified by chattr: huge
file (h), compression error (E), indexed directory (I), compression raw access (X), and compressed dirty
file (Z).
① chattr
② +a
10. 다음은 cpio 명령을 이용하여 텍스트 파일을 백업과 복원하는 절차이다.
다음 ( 괄호 ) 안에 들어갈 내용으로 알맞은 명령과 옵션을 적으시오.
가. 텍스트파일 백업
# find . -name *.text -print | cpio ( ① ) ( ② ) text.backup
나. 텍스트파일 복원
# cpio ( ③ ) ( ④ ) text.backup
<조 건>
- find 명령의 표준 출력을 cpio의 표준입력으로 받아 text.backup 파일로 백업한다.
- text.backup 백업된 데이터를 표준입력으로 받아 현재 디렉터리에 복원한다.
cpio : 백업 명령어 / 테이프 드라이브에 백업
-c : ASCII 형태로 헤더 정보 읽고 기록
-i : 아카이브에서 파일 추출
-o : 아카이브 생성
-v : 진행 과정 자세히 출력
[root@server1 ~]# cpio --help
Usage: cpio [OPTION...] [destination-directory]
GNU `cpio' copies files to and from archives
Examples:
# Copy files named in name-list to the archive
cpio -o < name-list [> archive]
# Extract files from the archive
cpio -i [< archive]
# Copy files named in name-list to destination-directory
cpio -p destination-directory < name-list
Main operation mode:
-i, --extract Extract files from an archive (run in copy-in
mode)
-o, --create Create the archive (run in copy-out mode)
-p, --pass-through Run in copy-pass mode
-t, --list Print a table of contents of the input
Operation modifiers valid in any mode:
--block-size=BLOCK-SIZE Set the I/O block size to BLOCK-SIZE * 512
bytes
-B Set the I/O block size to 5120 bytes
-c Identical to "-H newc", use the new (SVR4)
portable format.If you wish the old portable
(ASCII) archive format, use "-H odc" instead.
-C, --io-size=NUMBER Set the I/O block size to the given NUMBER of
bytes
--force-local Archive file is local, even if its name contains
colons
-f, --nonmatching Only copy files that do not match any of the given
patterns
-F, --file=[[USER@]HOST:]FILE-NAME
Use this FILE-NAME instead of standard input or
output. Optional USER and HOST specify the user
and host names in case of a remote archive
-H, --format=FORMAT Use given archive FORMAT
-M, --message=STRING Print STRING when the end of a volume of the
backup media is reached
-n, --numeric-uid-gid In the verbose table of contents listing, show
numeric UID and GID
--quiet Do not print the number of blocks copied
--rsh-command=COMMAND Use remote COMMAND instead of rsh
-v, --verbose Verbosely list the files processed
-V, --dot Print a "." for each file processed
-W, --warning=FLAG Control warning display. Currently FLAG is one of
'none', 'truncate', 'all'. Multiple options
accumulate.
Operation modifiers valid only in copy-in mode:
-b, --swap Swap both halfwords of words and bytes of
halfwords in the data. Equivalent to -sS
-r, --rename Interactively rename files
-s, --swap-bytes Swap the bytes of each halfword in the files
-S, --swap-halfwords Swap the halfwords of each word (4 bytes) in the
files
--to-stdout Extract files to standard output
-E, --pattern-file=FILE Read additional patterns specifying filenames to
extract or list from FILE
--only-verify-crc When reading a CRC format archive, only verify the
checksum of each file in the archive, don't
actually extract the files
Operation modifiers valid only in copy-out mode:
-A, --append Append to an existing archive.
-O [[USER@]HOST:]FILE-NAME Archive filename to use instead of standard
output. Optional USER and HOST specify the user
and host names in case of a remote archive
Operation modifiers valid only in copy-pass mode:
-l, --link Link files instead of copying them, when
possible
Operation modifiers valid in copy-in and copy-out modes:
--absolute-filenames Do not strip file system prefix components from
the file names
--no-absolute-filenames Create all files relative to the current
directory
Operation modifiers valid in copy-out and copy-pass modes:
-0, --null A list of filenames is terminated by a null
character instead of a newline
-a, --reset-access-time Reset the access times of files after reading
them
-I [[USER@]HOST:]FILE-NAME Archive filename to use instead of standard input.
Optional USER and HOST specify the user and host
names in case of a remote archive
-L, --dereference Dereference symbolic links (copy the files
that they point to instead of copying the links).
-R, --owner=[USER][:.][GROUP] Set the ownership of all files created to the
specified USER and/or GROUP
Operation modifiers valid in copy-in and copy-pass modes:
-d, --make-directories Create leading directories where needed
-m, --preserve-modification-time
Retain previous file modification times when
creating files
--no-preserve-owner Do not change the ownership of the files
--sparse Write files with large blocks of zeros as sparse
files
-u, --unconditional Replace all files unconditionally
-?, --help give this help list
--usage give a short usage message
--version print program version
Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.
Report bugs to <bug-cpio@gnu.org>.
[root@server1 ~]# cpio --usage
Usage: cpio [-ioptBcfnvVbrsSAl0aLdmu?] [-C NUMBER]
[-F [[USER@]HOST:]FILE-NAME] [-H FORMAT] [-M STRING] [-W FLAG]
[-E FILE] [-O [[USER@]HOST:]FILE-NAME]
[-I [[USER@]HOST:]FILE-NAME] [-R [USER][:.][GROUP]] [--extract]
[--create] [--pass-through] [--list] [--block-size=BLOCK-SIZE]
[--io-size=NUMBER] [--force-local] [--nonmatching]
[--file=[[USER@]HOST:]FILE-NAME] [--format=FORMAT]
[--message=STRING] [--numeric-uid-gid] [--quiet]
[--rsh-command=COMMAND] [--verbose] [--dot] [--warning=FLAG]
[--swap] [--rename] [--swap-bytes] [--swap-halfwords] [--to-stdout]
[--pattern-file=FILE] [--only-verify-crc] [--append] [--link]
[--absolute-filenames] [--no-absolute-filenames] [--null]
[--reset-access-time] [--dereference] [--owner=[USER][:.][GROUP]]
[--make-directories] [--preserve-modification-time]
[--no-preserve-owner] [--sparse] [--unconditional] [--help]
[--usage] [--version] [destination-directory]
① -o
② >
③ -i
④ <