이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음을 수강하며 정리한 글입니다.
21강 권한의 이해
(일반 사용자 id: j, pw: j)
(관리자 id: root, pw: r)
⭐ r: read, 4
⭐ w: write(create, remove, modify), 2
⭐ e: execute,1
dir 목록 조회
[j@hj0216 ~]$ ll /usr/bin/cal
-rwxr-xr-x. 1 root root 37736 10월 31 2018 /usr/bin/cal
-rwxr-xr-x.
-: file
rwx: 소유주 권한
r-x: 소유그룹 권한
r-x: 타인(others) 권한
1: 하드링크 수
root: 소유주
root: 소유 그룹
37763: file size
10월 31 2018: 변경 시간
chmod: chagne mode, 권한 변경
[j@hj0216 ~]$ chmod 644 /usr/bin/cal
chmod: changing permissions of `/usr/bin/cal': 명령을 허용하지 않음
644: 소유주(rw-), 소유그룹(r--), 그 외(r--)
* 일반 사용자 계정에서는 권한 변경 불가
[root@hj0216 ~]# ll /usr/bin/cal
-rwxr-xr-x. 1 root root 37736 10월 31 2018 /usr/bin/cal
[root@hj0216 ~]# chmod 644 /usr/bin/cal
[root@hj0216 ~]# ll /usr/bin/cal
-rw-r--r--. 1 root root 37736 10월 31 2018 /usr/bin/cal
-> root 계정에서는 권한 변경 가능
[root@hj0216 ~]# cal
-bash: /usr/bin/cal: 허가 거부
[j@hj0216 ~]$ cal
-bash: /usr/bin/cal: 허가 거부
권한 변경 후, root 및 일반 사용자 계정 cal 명령어 실행 허가 거부
실행 권한 재변경
[root@hj0216 ~]# chmod 744 /usr/bin/cal
[root@hj0216 ~]# cal
2월 2023
일 월 화 수 목 금 토
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
[j@hj0216 ~]$ cal
-bash: /usr/bin/cal: 허가 거부
744: 소유주(rwx), 소유그룹(r--), 그 외(r--)
권한 재변경 후, root 계정 cal 명령어 실행 가능 / 일반 사용자 계정 cal 명령어 실행 허가 거부
* 권한 변경을 위한 file path 확인
[j@hj0216 ~]$ which date
/usr/bin/date
[j@hj0216 ~]$ whereis cal
cal: /usr/bin/cal /usr/share/man/man1/cal.1.gz
읽기 권한 변경
1. 일반 사용자 /etc/bashrc 읽기 가능
[j@hj0216 ~]$ cat /etc/bashrc
# /etc/bashrc
# System wide functions and aliases
...
2. root 계정에서 일반 사용자의 읽기 권한 제거
[root@hj0216 ~]# ll /etc/bashrc
-rw-r--r--. 1 root root 2853 1월 15 22:57 /etc/bashrc
[root@hj0216 ~]# chmod 700 /etc/bashrc
[root@hj0216 ~]# ll /etc/bashrc
-rwx------. 1 root root 2853 1월 15 22:57 /etc/bashrc
3. 일반 사용자 /etc/bashrc 읽기 허가 거부
[j@hj0216 ~]$ cat /etc/bashrc
cat: /etc/bashrc: 허가 거부
일반 사용자 /etc/bashrc 읽기 전용, 수정 불가
[j@hj0216 ~]$ vi /etc/bashrc
"/etc/bashrc" [읽기 전용] 92L, 2853C
'OS > Linux' 카테고리의 다른 글
리눅스 기초 30강 시리즈 - 23강 하드 링크 심볼릭 링크 (0) | 2023.02.04 |
---|---|
리눅스 기초 30강 시리즈 - 22강 파일 분류 (0) | 2023.02.04 |
리눅스 기초 30강 시리즈 - 20강 압축(gzip/xz/tar) (0) | 2023.02.04 |
리눅스 기초 30강 시리즈 - 19강 ftp client 사용법 (0) | 2023.02.03 |
리눅스 기초 30강 시리즈 - 18강 C언어코딩(gcc) (0) | 2023.01.26 |