반응형
chmod는 다른 사용자에게 접근 권한을 부여할때 사용되는 명령어이다.
리눅스 파일 시스템에서 파일을 생성시 파일을 생성한 사용자가 파일에 대한 제어를 할수 있는데, 서비스를 운영하다 보면 다른 사용자에게 접근, 읽기, 쓰기 같은 권한을 주어야 할 경우가 있다.
소유자, 그룹, 익명사용자에게 각각 별도로 지정이 가능하며, 권한을 지정시 숫자, 알파벳기호, 특수문자를 통해 설정한다.
기본 문법
chmod [옵션] [--옵션] [모드] [파일]
chmod [옵션] [--옵션] [8진수 모드] [파일]
명령어 옵션
옵션 | 설명 |
-c, --changes | 올바르게 변경된 파일들만 -v 옵션을 적용하여 자세히 보여준다. |
-f, --silent, --quite | 가능한 한 불필요한 메시지를 보여주지 않고 간략하게 보여준다. |
-v, --verbose | 실행 과정을 자세하게 보여준다. |
-R, --recursive | 디렉토리와 그 안에 존재하는 서브디렉토리까지 모두 적용한다. |
--help | 사용 가능한 옵션들과 사용법을 보여준다. |
--version | 현재 버전 정보를 보여준다. |
절대모드 지정 방식
- 숫자를 지정하는 방식
- 숫자로 권한을 지정하는 방법은 읽기는 5, 쓰기는 2, 실행은 1
- 읽기, 쓰기, 실행을 모두 더한 수인 7을 지정을 하여 읽기, 쓰기, 실행을 권한을 허용할 수 있고, 0을 지정할 경우 읽기, 쓰기, 실행을 권한을 허용하지 않을 수 있다.
- 각각 소유자 권한, 그룹 권한, 그 밖에 다른 사용자를 지정할 수 있으며, 100, 10, 1 단위로 각각 권한을 설정
사용자 | 권한 | 접근 유형 | 절대 모드 지정 |
파일 소유자 | 읽기 | r | 5 or 400 |
쓰기 | w | 2 or 200 | |
실행 | x | 1 or 100 | |
그룹 | 읽기 | r | 5 or 40 |
쓰기 | w | 2 or 20 | |
실행 | x | 1 or 10 | |
다른 사용자 | 읽기 | r | 5 |
쓰기 | w | 2 | |
실행 | x | 1 |
상대모드 지정 방식
- 특정 문자를 이용한 퍼미션 설정 방법
- 특정 문자(u(파일 소유자)), g(그룹 소속자), o(일반 다른 사용자), a(모두))로 접근 주체를 지정하고, 다음으로 어떻게 실행할 것인지에 대한 실행자(+(권한 부여), -(권한 제거), =(권한유지))를 지정한 후에, 일기, 쓰기, 실행 등 권한에 해당하는 문자(r(일기), w(쓰기), x(실행), s(SetUID 또는 SetGID 설정) 등)를 지정하여 퍼미션을 설정
사용자 | 접근 주체 | 실행자 | 의 미 | 권 한 | 의미 |
파일 소유자 | u | + | 권한 부여 | r | 읽기 |
- | 권한 제거 | w | 쓰기 | ||
= | 권한 유지 | x | 실행 | ||
그룹 | g | + | 권한 부여 | r | 읽기 |
- | 권한 제거 | w | 쓰기 | ||
= | 권한 유지 | x | 실행 | ||
다른 사용자 | o | + | 권한 부여 | r | 읽기 |
- | 권한 제거 | w | 쓰기 | ||
= | 권한 유지 | x | 실행 |
특수목적 접근 방식
- SetUID. SetGID. 스티키 비트(Sticky bit)는 1000 단위에 절대 모드 지정 방식으로 설정이 가능 합니다 또한 해제 할때에는 0으로 지정하면 됩니다 그리고 SetUID는 파일에 색상이 빨간색 표시되고 SetGID는 노란색으로 표시됩니다.
접근 주체 | 절대 모드 방법 | 의미 | 표시 |
SetUID(Set User ID) | 4000 | 파일의 소유자만 삭제가능 설정 | S - 빨간색 |
SetGID(Set Group ID) | 2000 | 프로세스 실행 당시 GID로 설정 | S - 노란색 |
sticky bit | 1000 | 파일의 소유자만 삭제가능 설정 | T |
[참고]
https://server-talk.tistory.com/419
반응형
'Develops > Linux' 카테고리의 다른 글
[LINUX] mkdir 명령어(디렉토리 생성, 체크) (0) | 2024.03.30 |
---|---|
[LINUX] find 명령어 (파일명, 내용 검색 활용) (0) | 2024.03.30 |
[LINUX] chown 명령어 (소유자, 소유자그룹 변경) (0) | 2024.03.30 |
[LINUX] crontab 명령어 (리눅스 크론탭 스케줄러) (0) | 2024.03.30 |
[LINUX] 자주 사용하는 Linux 명령어 (0) | 2024.03.03 |