Linux/파일 및 디렉토리 관리

리눅스 파일 권한 ③권한 변경 umask 계산방법

miracle21 2023. 3. 4. 01:19
반응형

 

 

 

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으로 표시해줍니다.

 

umask 005

 

 

 

 

 

 

 

 

[K-Digital Training, 애티버스러닝 교육 내용을 정리한 포스팅입니다.]


참고 사이트: https://quio314.tistory.com/22

 

반응형