★ UMASK에 대해서


umask- 권한을 설정할 때 수동적으로 권한을 주지 않고 파일이나 디렉터리가 생성됨과 동시에 지정된 권한이 주어지도록 하는데 이를 umask라고 한다.


최초의 umask 값은 0022로 설정이 되어있다.


이처럼 허가원이 몇이냐에 따라 umask의 값이 달라지도록 Linux상에서 제공되고 있는데, 이는 반대로 생각하면 umask값에 따라 파일이나 디렉터리의 허가권이 달라지도록 제공되고 있다는 것을 의미하기도 한다.


umask 값은 어떤 방식으로 달라지는가?


파일의 Permission(허가권)의 값은 최대 666이고, 디렉터리의 Permission 값은 최대 777이다. 여기서 umask값을 뺀 값이 해당 파일의 허가권(Permission)이 되는 것이다.

예를 들어 a라는 파일이 umask 값이 022로 설정되어 있다면 그 파일의 허가권은 644가 되는 것이다. 파일의 기본 허가권은 666이기 때문에 666-022=644의 권한을 가지게 된다.


다음과 같이 아래 그림을 보면 좀더 명확하게 이해할수 있다.

위의 그림은 umask를 통해 파일과 디렉터리의 허가권을 설정하는 과정이고, 밑ㅇ의 그림은 디렉터리와 파일이 허가권(755,644)를 갖기 위해 umask 값을 결정하는 과정이다.


★★ 허가권


ls 명령어를 실행해서 파일과 디렉터리의 목록을 보면 앞에 다음과 같이 나타나는 부분이 있을 것이다. 이것을 리눅스에서는 허가권(Permission)이라고 부른다.

-rw-r--r--: 파일(앞이 -라면 파일)

drwxr-xr-x: 디렉터리(앞이 d라면 디렉터리)


★ rwx란?


r의 의미

-파일에서의 'r'의 의미: 파일의 내용을 읽어들이는 명령들과 관련이 있다.

-디렉터리에서의 'r'의 의미: 디렉터리 내용을 읽어들이는 것과 관련있다.(ls)


w의 의미

-파일에서의 'w'의 의미: 내용을 수정, 변경하는 명령어들과 관련이 있다.

-디렉터리에서의 'w'의 의미: 디렉터리 및 그 내부의 생성 및 삭제와 관련이 있다.


x의 의미

-파일에서 'x'의 의미: x가 있으면 실행파일, 없으면 문서파일, 접근 권한을 포함한다.

디렉터리에서 'x'의 의미: 접근권한의 여부


접근을 할 수 있어야 파일 및 디렉터리를 읽을 수 있고 읽을 수 있어야 수정하거나, 삭제할 수 있다. 즉, 접근 권한이 보장이 되어야 한다.


■ chmod

chmod -허가권 설정(사용자권한: w/그룹의 권한:r/그외의 사용자 o)


numeric method

chmod 461 file/directory(4:r/6:r+w/1:x)

--> 사용자에게 읽기 권한 부여/ 그룹에 읽고 쓰기 권한 부여/ 그 외 사용자에게 접근권한 부여


1. /a/ 라는 디렉터리를 생성한다.

2. /a/testing이라느느 파일을 생성한다.

3. rw-r----x로 허가권을 변경한다. 

4. r-rwxrw로 허가권을 변경한다. 





현재 test_dir의 파일의 에는 다음과 같은 파일 및 디렉터리가 생성됨

현재 그룹의 사용자 권한을 살펴본다면 다음과 같이 나온다.

d 디렉터리를 의미 r 숫자4 w 2 x 1 을 의미하고 3단위로 읽기 때문에 디렉터리의 최고는 7을 의미한다. 때문에 755로 되었다고 생각하고 755는 다음과 같이 해석을 한다.


7 읽고 쓰고 실행의 기능이 가능하다. 5 읽기,쓰기만 가능 5 읽기, 쓰기만 가능

앞 3자리 소유자의 그룹을 의미, 그룹을 의미, 나머지 그룹을 의미한다.


+ Recent posts