반응형

설명

생성된 파일이나 폴더의 퍼미션을 변경하는 경우에는 chmod 명령어를 사용하지만, 앞으로 생성될 파일이나 폴더의 퍼미션을  미리 설정하는 명령어는 umask입니다. 이와 같은 특성으로 파일이나 폴더를 업로드하는 프로토콜인 FTP와 같은 곳에서 많이 사용됩니다. 이페이지에서는 숫자조합 위주로 설명하겠습니다.

 

 

UMASK 형식

chmod 명령어는 숫자조합(421)으로 퍼미션을 설정할 수 있습니다. umask도 비슷하게 숫자조합으로 생성될 파일이나 폴더의 퍼미션을 설정할 수 있습니다. 다만 chmod 명령어와 다른 점이 있는데, 시스템이 제공하는 기본 퍼미션인 666(파일)과 777(폴더)에서 특정 숫자조합(기본값 022)을 빼주는 형식으로 파일 및 폴더의 퍼미션을 설정합니다. 아래에서 간단한 예를 들었는데요, umask 명령어로 생성될 파일 및 폴더의 퍼미션을 022로 지정한면, 그 영향으로 파일과 폴더의 기본 퍼미션은 644와 755로 바뀌게 됩니다. 이것이 우리가 리눅스를 처음 설치하고 파일이나 폴더를 생성하면 퍼미션이 644와 755로 보이는 이유입니다.

 

### 시스템이 제공하는 기본 퍼미션 ###
파일 : 666
폴더 : 777

### UMASK로 퍼미션 조절 ###
[root@localhost ~]# umask 022

### UMASK로 퍼미션 조절한 결과 ###
파일 : 666 - 022 = 644
폴더 : 777 - 022 = 755

 

umask 명령어에서 사용하는 숫자조합을 조금 더 자세히 들여다보면, 아래의 내용과 같이 각 숫자는 특성을 갖습니다. 이런 특성을 이용하여 FTP와 같이 신규 파일이 업로드되는 서비스에서 효과적으로 생성되는 파일 및 폴더의 퍼미션을 조절할수 있습니다.

 

### umask 숫자별 퍼미션 ###
0 : 읽기(r) / 쓰기(w) / 실행(e)
1 : 읽기(r) / 쓰기(w)
2 : 읽기(r) / 실행(e)
3 : 읽기(r)
4 : 쓰기(w) / 실행(e)
5 : 쓰기(w)
6 : 실행(e)
7 : 퍼미션 없음

 

 

UMASK 변경

umask를 변경하는 것은 "umask 022"와 같이 간단한 명령 구문으로 가능합니다. 아래와 같이 현재의 umask 설정값을 확인할수도, 새로운 값으로 설정할수도 있습니다. 다만, "umask 000"와 같은 설정은 모든 사용자에게 모든 퍼미션을 허용하는 것이므로 사용상에 주의가 필요합니다.

 

### umask 현재 설정 확인 ###
[root@localhost ~]# umask
0022

### umask 설정 변경 ###
[root@localhost ~]# umask 024
반응형

+ Recent posts