Umask
Umask는 새로 만들어지는 파일의 권한을 제어하는 명령어입니다.
umask를 사용하지 않아도 파일은 잘 생성이 되지만
자동적으로 최고권한으로 생성되기 때문에
이를 막기 위해서 umask로 권한 제어를 해줍니다.
파일권한 = 실행권한 - umask
디렉토리 | 777 | 파일 | 666 |
umask | 022 | umask | 022 |
755 | 644 |
디렉토리와 파일의 기본권한은 777, 666 으로 최고권한으로 되어있습니다.
만약 umask 022 명령어를 입력하면
이후에 생성되는 디렉토리와 파일의 권한은 755, 644가 되는거죠.
리눅스는 umask가 기본으로 022로 설정되어 있기 때문에 umask 설정을 건드리지 않더라도
아래처럼 디렉토리는 wxr-xr-x(755),
파일은 rw-r--r--(644) 권한으로 생성됩니다.
그럼 이제 umask 055 로 설정을 바꾼 후에 새로운 디렉토리와 파일을 만들어봅시다.
디렉토리는 rwx-w--w-(722)
파일은 rw--w--w-(622) 권한으로 만들어졌습니다.
만약 디렉토리 권한을 777-055 = 722,
파일 권한은 666-055 = 611으로 계산했다면 올바른 값이 나오지 않습니다.
umask의 계산은 10진수가 아닌 2진수로 봐야합니다.
2진수의 1을 통과시키면 쉽게 계산이 됩니다.
위의 umask 055 를 예로 들어서 다시 풀어봅시다.
10진수 | 2진수 | 10진수 | 2진수 | ||
디렉토리 | 777 | 111 111 111 | 파일 | 666 | 110 110 110 |
umask | 055 | 000 101 101 | umask | 055 | 000 101 101 |
722 | 111 010 010 | 622 | 110 010 010 |
umask의 0 부분을 통과한 1만 계산을 해보면 제대로 된 값이 나옵니다.
아래 링크를 참고하시면 더 다양한 umask 값을 확인 할 수 있습니다.
Every Possible Umask Mode - Linux Training Academy: https://www.linuxtrainingacademy.com/all-umasks/
+
S 옵션을 사용하면 현재 umask값을 symbolic으로 표시해줍니다.
[K-Digital Training, 애티버스러닝 교육 내용을 정리한 포스팅입니다.]
참고 사이트: https://quio314.tistory.com/22
'Linux > 파일 및 디렉토리 관리' 카테고리의 다른 글
리눅스 파일 권한 ⑥ACL: Access Control List 접근 제어 목록 설정, 예시 (0) | 2023.03.07 |
---|---|
리눅스 파일 권한 ⑤특수 권한 setuid, setgid, stikybit (0) | 2023.03.06 |
리눅스 파일 권한 ④권한 변경 chown chmod 비교, 예시 (0) | 2023.03.05 |
리눅스 파일 권한 ②권한 변경 chmod (0) | 2023.03.03 |
리눅스 파일 권한 ① ls -l 의 의미 (0) | 2023.03.02 |