umask를 사용한 생성 파일 권한 설정
리눅스에서 파일이나 디렉터리를 만들면 자동으로 다음과 같은 권한이 설정된다.
[root@localhost user01]# touch test.txt
[root@localhost user01]# mkdir testDirectory
[root@localhost user01]# ls -l
-rw-r--r--. 1 root root 0 12월 31 10:00 test.txt
drwxr-xr-x. 2 root root 6 12월 31 10:01 testDirectory
기본적으로 마스크값은 022가 설정되어 있는데 이 값을 변경하면 자동 설정 권한이 바뀐다.
조금 더 자세히 설명해 보자.
파일의 최대 권한은 666 즉 rw-rw-rw 이다.
디렉터리의 최대 권한은 777 rwxrwxrwx이다.
파일, 디렉터리 생성시 최대 권한에서 마스크값을 뺀 값 만큼 권한을 부여하는 것이다.
예를 들어 보자.
파일 최대 권한 6 6 6
마스크값 0 2 2
적용되는 값 6 4 4 = rw-r--r--
디렉터리도 마찬가지다.
디렉터리 최대 권한 7 7 7
마스크값 0 2 2
적용되는 값 7 5 5 = rwxrw-rw-
이제 마스크 값을 바꿔 기본 설정 권한을 변경해 보자.
[user01@localhost ~]$ umask 222
마스크 값을 222로 설정한다
[user01@localhost ~]$ touch testUmask.txt
[user01@localhost ~]$ mkdir testUmaskDirectory
그리고 나서 파일과 디렉터리를 한 개씩 만든다.
[user01@localhost ~]$ ls -l
생성된 파일과 디렉터리의 권한을 확인해 본다.
-rw-r--r--. 1 root root 0 12월 31 10:00 test.txt
-r--r--r--. 1 user01 user01 0 12월 31 11:28 testUmask.txt
umask를 적용하기 전 파일의 기본 권한은 rw-r--r--
적용한 후, 파일의 기본 권한은 r--r--r-- 이다.
파일 최대 권한 6 6 6
마스크값 2 2 2
적용되는 값 4 4 4 = r--r--r--
디렉터리의 권한도 확인해 보자.
drwxr-xr-x. 2 root root 6 12월 31 10:01 testDirectory
dr-xr-xr-x. 2 user01 user01 6 12월 31 11:28 testUmaskDirectory
마스크값 2 2 2
(연습문제) umask 111 을 입력한 후 디렉터리를 생성하면 권한은 어떻게 설정이 될까?
(정답)
[user01@localhost ~]$ umask 111
[user01@localhost ~]$ mkdir questionDirectory
'리눅스 기초' 카테고리의 다른 글
리눅스와 사용자 계정 관리 _ 사용자 계정 정보 확인하기 (0) | 2024.05.06 |
---|---|
리눅스 파일/디렉터리의 소유권, 권한 설정 5 _ setUID, setGID (0) | 2024.04.27 |
리눅스 파일/디렉터리의 소유권, 권한 설정 3 _ 소유권 변경하기 (0) | 2024.04.22 |
리눅스 파일/디렉터리의 소유권, 권한 설정 2 _ 권한 변경하기 (1) | 2024.04.21 |
리눅스 파일/디렉터리의 소유권, 권한 설정 1 _ 소유권과 권한 확인하는 법 (1) | 2024.04.20 |