👉 chmod 명령어(권한 변경)
- 파일의 권한을 변경하는 명령어
- 숫자 방식(
chmod 755 파일명)
- 문자 방식(
chmod u+x 파일명 → 소유자에게 실행 권한 추가)
👉 파일 권한(읽기/쓰기/실행)
- 파일과 디렉토리의 권한은
소유자, 그룹, 기타 사용자 세 그룹에 대해 각각 설정
- 읽기(r) : 파일을 읽을 수 있음
- 쓰기(w) : 파일을 수정할 수 있음
- 실행(x) : 실행할 수 있음
- 파일의 권한(읽기, 쓰기, 실행)은 각각 이진수(true/false)로 표현 → 8진수로 변환해서 작성
- 특정 권한이 있으면 1(true), 없으면 0(false)로 설정
👉 파일 권한 값 정리
| 권한(rwx) | 읽기(r) | 쓰기(w) | 실행(x) | 8진수 값 | 설명 |
|---|
rwx | 1 | 1 | 1 | 7 | 읽기 + 쓰기 + 실행 (모든 권한) |
rw- | 1 | 1 | 0 | 6 | 읽기 + 쓰기 권한 있음 |
r-x | 1 | 0 | 1 | 5 | 읽기 + 실행 권한 있음 |
r-- | 1 | 0 | 0 | 4 | 읽기(r) 권한만 있음 |
-wx | 0 | 1 | 1 | 3 | 쓰기 + 실행 권한 있음 |
-w- | 0 | 1 | 0 | 2 | 쓰기(w) 권한만 있음 |
--x | 0 | 0 | 1 | 1 | 실행(x) 권한만 있음 |
--- | 0 | 0 | 0 | 0 | 아무 권한 없음 |
- 이진수로 권한 표현
r w x
1 0 0 → 읽기(O), 쓰기(X), 실행(X) = `4`
0 1 0 → 읽기(X), 쓰기(O), 실행(X) = `2`
0 0 1 → 읽기(X), 쓰기(X), 실행(O) = `1`
- 1은 true ⇒ 권한이 있다는 뜻
- 0은 false ⇒ 권한이 없다는 뜻
👉 권한 표현 방식
- 권한은 소유자(Owner), 그룹(Group), 기타 사용자(Other) 순서로 3개의 그룹으로 설정
- 소유자 : 파일 작성자
- 그룹 : 소유자가 포함된 그룹
- 기타 사용자 : 소유자도, 그룹도 아닌 모든 사용자로 모든 외부 사용자
- 예시
👉 chmod 사용 예제
chmod 755 script.sh # 소유자는 모든 권한, 그룹과 기타 사용자는 읽기/실행 가능
chmod u+x script.sh # 소유자에게 실행 권한 추가