파일(디렉토리)가 생성시 퍼미션 설정을 위한 umask개론
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,518 조회
- 0 추천
- 목록
본문
파일(디렉토리)가 생성시 퍼미션 설정을 위한 umask개론
umask는 파일 또는 디렉토리 생성시에 파일과 디렉토리의 퍼미션(permission)을 설정하기 위한 마스크값을 설정하거나 확인하는 쉘내부명령어입니다.
처음 접하시는 분들에게는 좀 어려운 말일지 모르겠습니다.
좀 쉽게 설명하면 다음과 같습니다.
사용형식 : umask [-p] [-S] [mode]
각 계정사용자들의 umask 설정 값은 아무런 옵션 없이 umask로 확인할 수 있으며 umask값의 변경은 “umask 마스크값”이란 형식으로 지정하여 설정합니다.
우리가 touch나 mkdir명령어등으로 파일 또는 디렉토리를 새로 생성할 경우에 생성되는 파일과 디렉토리의 퍼미션이 어떻게 결정되는가를 생각해 보시기 바랍니다.
즉, 모든 계정 사용자에게는 umask라는 값이 있으며 이 값에 따라서 새로 생성되는 파일과 디렉토리의 퍼미션이 달라지게 되는 것입니다.
결론적으로 umask값이란 모든 계정사용자들에게 존재하는 값으로서 각 계정 사용자들이 생성하는 파일 또는 디렉토리의 퍼미션을 결정하기 위한 MASK값입니다.
모든 사용자들의 umask의 기본값은 002입니다.
umask값이 002일 경우에 새로 생성되는 파일의 퍼미션은 664이며 새로 생성되는 디렉토리의 퍼미션은 775입니다.
즉, umask값에 따라서 생성되는 파일과 디렉토리의 간단한 예를 보면 다음과 같습니다.
umask값
|
000
|
001
|
002
|
022
|
생성되는 파일 퍼미션 |
666 |
666 |
664 |
644 |
생성되는 디렉토리 퍼미션 |
777 |
776 |
775 |
755 |
위의 표는 umask값에 따라서 새로 생성되는 파일과 디렉토리의 퍼미션이 달라지는 예를 보인 것입니다.
위의 표에 대한 다음 간단한 예를 보시기 바랍니다.
[root@su250 newdir]# umask 000 [root@su250 newdir]# [root@su250 newdir]# touch file000 [root@su250 newdir]# mkdir dir000 [root@su250 newdir]# [root@su250 newdir]# ls -l 합계 4 drwxrwxrwx 2 root root 4096 2009-01-07 20:31 dir000 -rw-rw-rw- 1 root root 0 2009-01-07 20:31 file000 [root@su250 newdir]# |
위의 예는 umask값을 000으로 설정한 후에 file000이라는 파일과 dir000이라는 새로운 디렉토리를 각각 하나씩 생성하였습니다.
그런 다음 생성된 파일과 디렉토리의 퍼미션을 확인해 보았습니다.
확인결과 file000파일은 666퍼미션, dir000디렉토리는 777퍼미션을 각각 가지고 있음을 알 수 있습니다.
한가지 예를 더 보겠습니다.
[root@su250 newdir]# umask 022 [root@su250 newdir]# [root@su250 newdir]# touch file003 [root@su250 newdir]# mkdir dir003 [root@su250 newdir]# [root@su250 newdir]# ls -l 합계 16 drwxr-xr-x 2 root root 4096 2009-01-07 20:33 dir003 -rw-r--r-- 1 root root 0 2009-01-07 20:33 file003 [root@su250 newdir]#
|
위의 예는 umask값을 022로 설정한 후에 file003이라는 새로운 파일과 dir003이라는 새로운 디렉토리를 새로 생성하였습니다.
그리고 퍼미션을 확인한 결과 file003은 644퍼미션을 가졌고, dir003이라는 디렉토리는 755라는 퍼미션을 가졌음을 알 수 있습니다.
이제부터 umask에 대한 보다 자세한 의미와 사용법에 대해서 알아보도록 하겠습니다.
관련자료
-
이전
-
다음