퍼미션, u-mask
1. 퍼미션
리눅스에서 퍼미션(Permission) 이란,
파일이나 디렉터리에 대해 누가 무엇을 할 수 있는지를 지정하는 접근 권한(Access Right) 이다.
1.1 퍼미션 권한 종류
리눅스는 각 파일/디렉토리에 대해 다음 3가지 권한을 설정한다:
권한 | 설명 | 기호 |
---|---|---|
읽기 (Read) | 파일 내용 보기 / 디렉토리 목록 보기 |
|
쓰기 (Write) | 파일 내용 수정 / 디렉토리에 파일 생성, 삭제 |
|
실행 (Execute) | 파일 실행 / 디렉토리 접근 |
|
1.2 퍼미션의 주체
각 권한은 다음 3가지 사용자 범주에 대해 각각 설정된다:
사용자 | 설명 |
---|---|
소유자 (User, | 해당 파일을 만든 사용자 |
그룹 (Group, | 파일이 속한 그룹의 사용자 |
기타 (Others, | 그 외 모든 사용자 |
1.3 퍼미션 숫자 표기 (8진수 방식)
권한 | 값 |
---|---|
| 4 |
| 2 |
| 1 |
조합해서 3자리 숫자로 표시한다:
rwx
→ 4+2+1 = 7rw-
→ 4+2+0 = 6r--
→ 4+0+0 = 4
예: chmod 754 file.txt
→ 사용자: rwx
(7), 그룹: r-x
(5), 기타: r--
(4)
1.4 퍼미션 명령어
명령어 | 설명 |
---|---|
| 파일의 퍼미션 보기 |
| 퍼미션 변경 ( |
| 소유자 변경 ( |
| 그룹 변경 ( |
1.5 예시
리눅스에서 퍼미션을 바꿀 때 사용하는 chmod
명령어는 두 가지 방식이 있다:
- 1. 기호(Symbolic) 방식:
u+x
,g-w
등 - 2. 8진수(Numeric) 방식:
644
,755
등
명령어 + 퍼미션 + 파일명
chmod u+x hello.sh
→ 현재 사용자에게 실행 권한 추가
chmod 644 report.txt
→ rw-r--r--
설정 (작성자: 읽기/쓰기, 나머지: 읽기만)
2. U Mask란?
"User File Creation Mask" 의 줄임말이다.
사용자가 새 파일이나 디렉터리를 생성할 때 기본 퍼미션에서 차감할 권한을 지정한다.
2.1 리눅스 기본 생성 권한
- 파일: 기본 최대 권한 =
666
(rw-rw-rw-
) - 디렉토리: 기본 최대 권한 =
777
(rwxrwxrwx
)
파일은 기본적으로 실행(x) 권한이 부여되지 않음!
실제 권한=기본 권한−umask 값
참고 자료
- 흥달쌤 계산식 특강