리눅스에서는 디렉터리 또는 파일의 접근 권한을 소유자(Owner), 그룹(Group), 그 외 계정(Others)으로 구분하여 각각 읽기(r), 쓰기(w), 실행(x) 권한을 줄 수 있다.
umask를 통해 초기 디렉터리, 파일 생성 시 접근 권한을 설정하는 방법을 작성한다.
umask란?
초기 접근권한의 경우 (디렉터리 : 777) (파일 : 666)인데, 여기에서 umask 뺀 만큼 초기 접근권한을 설정할 수 있다. umask 변경 시, 향후 생성되는 디렉터리 & 파일은 설정된 (초기) 접근권한으로 생성된다.
umask가 0002일 경우 접근 권한
(*OS user 최초 생성 시 기본적으로 umask 0002 로 설정되어 있다.)
파일 : 666 - 002 = 664
디렉터리 : 777 - 002 = 775
**접근권한 8진수(Octal number) 표기법 : r(4),w(2),x(1)
ex) 파일 : -rw-rw-r-- (664) 디렉터리 : drwxrwxr-x (775)
현재 설정된 umask 확인
[test@test ~]$ umask 0002 |
디렉터리, 파일 생성 및 접근 권한 확인
[test@test ~]$ mkdir test_dir [test@test ~]$ touch test.txt [test@test ~]$ ll -rw-rw-r--. 1 test test 0 12월 19 15:46 test.txt drwxrwxr-x. 2 test test 4096 12월 19 15:45 test_dir |
파일 기준으로 (맨 처음 하이픈을 제외한) 앞에서부터 3개씩 소유자 (rw-), 그룹 (rw-), 타계정(r--)으로 구분할 수 있고, 타계정을 제외한 접근 권한은 파일에 대한 읽기(r), 쓰기(w) 권한을 가지고 있다. (타계정은 읽기 권한만 존재)
디렉터리는(맨 처음 d = directory) 소유자, 그룹은 읽기(r), 쓰기(w), 실행(x) 권한이 존재한다.
계정 단위 umask 설정
(umask(077) = 소유자만 접근권한 부여)
. bash_profile(또는 .bashrc)을 통해 umask를 설정할 수 있다.
-- .bash_profile 편집 (umask 077 추가)
[test@test ~]$ vi ~/.bash_profile umask 077 |
-- .bash_profile 설정 적용
[test@test ~]$ . ~/.bash_profile |
--적용된 umask 조회 (077로 적용했지만 umask 조회 결과값은 0077로 확인된다.)
--변경된 접근권한으로 디렉터리, 파일 생성
[test@test ~]$ mkdir umask_test_dir [test@test ~]$ touch umask_test.txt [test@test ~]$ ll -rw-rw-r--. 1 test test 0 12월 19 15:46 test.txt drwxrwxr-x. 2 test test 4096 12월 19 15:45 test_dir -rw-------. 1 test test 0 12월 19 16:06 umask_test.txt drwx------. 2 test test 4096 12월 19 16:06 umask_test_dir |
**umask 0077
파일 : 666 - 077 = 600
디렉터리 : 777 - 077 = 700
--umask_test_dir 디렉터리 Others 계정 접근 불가
**디렉터리의 경우 실행권한(x)이 없으면 접근이 불가하고, 읽기 권한 (r) 이 없으면, 해당 디렉터리 내에서 조회할 수 없다.
[others@others ~]$ cd umask_test_dir -bash: cd: umask_test_dir: 허가 거부 |
--현재 접속 시에만 umask 변경 (로그아웃 시 설정된 umask는 초기화)
$ umask 002
아래 블로그에 글을 참조 하였습니다.
https://bamdule.tistory.com/171
[Linux] umask 명령어란
1. 파일 접근 권한이란 2020/11/10 - [IT/Linux] - [Linux] 파일의 접근 권한을 8진수로 표기하는 방법 2. umask란 umask는 파일이나 디렉터리 생성 시 초기 접근권한을 설정할 때 사용합니다. 초기 파일의 권
bamdule.tistory.com
감사합니다.