[리눅스마스터]제1601회 리눅스마스터 1급 2차 시험 단답식 풀이 1
1. 다음은 사용자 신분 확인 명령에 대한 설명이다. ( 괄호 )안에 알맞은 내용을 적으시오.
명령어 | 설명 |
( ① ) | 유효 사용자 아이디(Effective User ID)의 정보를 확인하는 명령이다. |
( ② ) | 시스템에 접속할 당시의 계정명과 접속 정보를 확인하는 명령이다. |
( ③ ) | 현재 시점에서 시스템을 사용하고 있는 내가 누구인가에 대한 자세한 정보를 보여준다. 사용자 아이디, 그룹아이디, 소속 그룹 정보 등을 확인할 수 있다. |
<조 건>
- ① : 관련 명령어만 적는다.
- ② : 관련 명령을 적는데 필요하면 옵션을 포함해서 기재한다.
- 명령은 대소문자를 구분하며, 띄어쓰기, 기호 등을 정확히 기술한다.
<사용자 정보 확인 명령>
- who 명령어 : 현재 시스템을 사용하는 사용자의 정보를 출력
[root@server1 ~]# who
(unknown) :0 2022-03-24 12:06 (:0)
root pts/0 2022-03-24 12:07 (192.168.10.1)
- who am i 명령어 : 시스템에 접속할 당시의 계정명과 접속 정보를 출력
[root@server1 ~]# who am i
root pts/0 2022-03-24 12:07 (192.168.10.1)
- w 명령어 : 현재 시스템을 사용하는 사용자의 정보와 작업 정보를 출력
[root@server1 ~]# w
12:14:43 up 8 min, 2 users, load average: 0.00, 0.06, 0.05
USER TTY LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 12:07 3.00s 0.10s 0.05s w
- whoami 명령어 : 현재 작업하고 있는 자신의 계정을 출력
[root@server1 ~]# whoami
root
- id 명령어 : 현재 작업하고 있는 자신의 계정명, 그룹명, UID, GID를 출력
[root@server1 ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
- users 명령어 : 현재 시스템에 로그인되어 있는 사용자의 계정을 출력
[root@server1 ~]# users
(unknown) root
① whoami
② who -m
③ id
2. 다음 보기와 같이 소유자와 소유그룹을 변경하려고 한다.
소유자와 소유그룹에는 모든 권한을 할당하고, 다른사용자계층에 어떠한 권한도 부여하지 않으려고 한다.
( 괄호 )안에 들어갈 내용을 적으시오.
# ls -ld exam_dir
drwxr-xr-x. 2 tux penguins 21 May 2 22:44 exam_dir
# ls -l exam_dir/exam.txt
-rw-r--r--. 1 tux penguins 0 May 2 22:44 exam_dir/exam.txt
# ( ① )
# ( ② )
# ls -ld exam_dir
drwxrwx---. 2 super users 21 May 2 22:44 exam_dir
# ls -l exam_dir/exam.txt
-rwxrwx---. 1 super users 0 May 2 22:44 exam_dir/exam.txt
<조 건>
- ( 괄호 )는 명령어와 옵션으로 한 줄로 적는다.
- 2개의 명령에 옵션을 이용하여 소유권 및 허가권을 변경한다.
- 소유권은 tux에서 super로 변경한다.
- 소유그룹은 penguins에서 users로 변경한다.
- 허가권 변경의 옵션은 숫자 모드를 사용한다.
chmod : 파일이나 디렉토리를 새로운 권한으로 변경
심볼릭 모드(Symbolic Mode)
# chmod u+x file1
옥탈 모드(Octal Mode)
# chmod 744 file1
[root@server1 ~]# man chmod
-R, --recursive
change files and directories recursively
① chmod -R super.users exam_dir
② chmod -R 770 exam_dir
3. cron을 이용하여 서비스상태를 확인하는 스케줄링 작업을 등록하려고 한다.
아래의 조건에 알맞은 설정 내용을 적으시오.
<조 건>
- root 권한으로 crontab 명령어를 사용해서 설정하는 것으로 가정한다.
- 서비스 상태를 확인하는 스크립트 파일의
절대경로는 /services/health_check.sh이고, 실행권한은 설정되어 있다.
- 매주 월요일부터 금요일까지에 실행되고, 오전 9시부터 오후 6시까지 5분 간격으로 자동으로 수행되게 설정한다.
[root@server1 ~]# find / -name crontab
/sys/fs/selinux/class/passwd/perms/crontab
/etc/crontab
/usr/bin/crontab
[root@server1 ~]# vi /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
① */5 9-18 * * 1-5 /services/health_check.sh