Server/Linux

Linux // UMASK

깨래 2018. 1. 30. 11:09

UMASK

#umask - 현재 로그인 한 사용자에게 적용 된 UMASK 값 확인

0022     - 기본 3자리만 확인

1) 파일/디렉토리를 생성할 때 가지게 되는 기본 허가권을 결정하는 기준이 되는 값

2) UMASK 값에 파일과 디렉토리가 가진 기본 허가권을 뺀 값으로 허가권이 결정된다.

파일 기본 허가권                  디렉토리 기본 허가권

rw-  rw-  rw-                       rwx  rwx  rwx

110  110  110                        111   111   111

 6    6     6                          7      7     7

UMASK 0022

---  -w-  -w-

000  010   010   UMASK값을 2진수로 나타낸 다음 보수를 취한다.

111  101   101   보수 ( 0 -> 1, 1 - >)

110  110  110 파일 기본 허가권                   111 111 111  디렉토리 기본 허가권

111  101  101 UMASK값(보수)                    111 101 101 UMASK값(보수)

AND ------------------------------------------------------------------------------

110  100  100 결정 된 허가권                     111  101 101 결정된 허가권

rw-  r--  r--                                      rwx  r-x r-x

 6    4     4                                        7     5   5     

       A B

AND  0 0 -> 0

           0 1 -> 0

          1 0 -> 0

           1 1 -> 1

umask 변경 방법


# umask [값]

 ex) #umask 0000  // 기본적으로 3자리도 가능

      #umask 0044

umask를 변경 한 후에 파일이나 디렉토리를 변경하여 umask용도를 확인한다.

cat /etc/login.defs |grep -i umask

umask 077 // 사용자의 홈 디렉토리 생성 시 기준이 되는 UMASK 값

 111 111 111 디렉토리 기본 허가권

 000 111 111 홈 디렉토리 UMASK

 111 000 000 홈 디렉토리 UMASK ( 보수 )

 111 111 111 디렉토리 기본 허가권

 AND-----------------------------------------------

 111 000 000 홈 디렉토리에 적용되는 허가권 ( rwx --- ---)