허가권 설정 명령어 : chmod
파일이나 디렉터리에 접근할 수 있는 허가권을 설정하는 명령이다. chmod는 알파벳 기호를 사용하는 문자 모드와 8진수의 값을 사용하는 숫자 모드로 지정한다. 문자 모드에서 사용하는 기호는 권한, 사용자, 설정 등 3가지로 나눌 수 있다. 권한의 표시는 r, w, x를 사용하고, 사용자의 지정은 u, g, o, a를 사용한다. 마지막으로 설정 기호는 +, -, =을 사용한다. u는 파일 소유자의 접근 권한을 지정할 때 사용하고, o는 다른 사용자들에 대한 접근 권한을 지정할 때 사용한다. a는 all의 약자로 파일 소유자, 그룹, 다른 모든 사용자를 포함하여 접근 권한을 지정할 때 사용한다.
chmod 옵션
chmod [option] mode file(s)
옵션 | 설명 |
-R | 하위 디렉터리를 포함하여 디렉터리 내부의 모든 파일의 접근 권한을 변경한다.(--recursive) |
-c | 변경된 정보를 출력해준다.(--changes) |
-f | 중요한 오류 메시지가 아니면 출력하지 않는다.(--silent, --quite) |
-v | 명령 진행 결과에 대한 정보를 자세히 출력한다.(--verbose) |
-version | 명령어의 버전 정보를 출력한다. |
사용 예
① 모든 사용자에게 모든 권한을 준다. 'chmod a+rwx aa.txt', 'chmod 777 aa.txt'와 같다.
chmod ugo+rwx aa.txt
② aa.txt라는 파일에 대해 소유자는 읽기, 쓰기, 실행이 가능하고 그룹 및 다른 사용자는 읽기와 실행만 가능하게 설정한다.
chmod 755 aa.txt
③ 현재 디렉터리 안의 모든 파일을 다른 사용자가 읽기 및 쓰기 권한의 사용할 수 없도록 설정한다. 'chmod o-rw *'와 같다.
chmod o-r,o-w *
④ .txt로 끝나는 파일들에 대해 모든 사용자가 읽을 수 있도록 설정한다.
chmod a+r *.txt
⑤ /etc/fstab라는 파일을 다른 사용자(other)는 읽을 수만 있도록 설정한다. = 기호는 기존 권한을 초기화한 후에 지정한 권한만 설정할 때 사용한다. 참고로 사용자(user)나 그룹(group)은 영향 없이 기존의 허가권이 그대로 유지된다.
chmod o=r /etc/fstab
⑥ 하위 디렉터리를 포함하여 현재 디렉터리의 모든 파일에 대해 그룹 및 다른 사용자가 접근할 수 없도록 설정한다.
chmod -R go-rwx
⑦ a.txt 파일에 어떠한 권한도 설정하지 않는다. 'chmod 0 a.txt'와 같다.
chmod a= a.txt
⑧ 'chmod 066 a.txt'과 같은 설정으로 소유자에게는 어떠한 권한도 설정하지 않고, 그룹 및 다른 사용자에게 읽기 및 쓰기 권한을 부여한다.
chmod 66 a.txt
⑨ a.out라는 파일에 Set-UID를 설정한다.
chmod u+s a.out
⑩ a.out라는 파일에 Set-GID를 설정한다.
chmod g+s a.out
⑪ data 디렉터리에 Sticky-Bit를 설정한다.
chmod o+t data/
⑫ /project라는 디렉터리에 Set-GID를 부여하여 파일 생성 시 자동으로 그룹 소유권을 지정하고, 그룹 사용자 간의 고유 모드(Sticky Bit)로 사용한다.
chmod g+s,o+t /project
⑬ /project라는 디렉터리를 해당 그룹에 속한 사용자들만 접근하고, 파일을 생성/삭제할 수 있도록 하고, 그룹 소유권을 자동 지정(Set-GID)하고 공유(Sticky Bit)하여 사용하도록 한다.
chmod 3070 /project
참고자료
CentOS 7으로 리눅스마스터 1급 정복하기
'Linux' 카테고리의 다른 글
Linux - 레드햇 패키지 관리기법 : RPM (0) | 2022.10.12 |
---|---|
Linux - 주기적인 작업 등록 : cron, crontab (1) | 2022.10.11 |
Linux - 파일/디렉터리 그룹 변경 명령어 : chgrp (0) | 2022.10.10 |
Linux - 사용자 계정 생성 명령어 : useradd (0) | 2022.10.10 |
[Linux] 파일 시스템 생성하는 방법 (fdisk, mkfs, fsck, mount, fstab, umount) (0) | 2022.10.03 |