🌏 OS/Linux

[Linux] umask

heywantodo 2024. 6. 17. 14:33
728x90
반응형

[Linux] umask

umask 란?

umask는 사용자 파일 생성 모드 마스크(user file-creation mode mask)를 의미한다.

이는 새로 생성된 파일과 디렉터리에 대한 기본 권한 설정을 결정하는 Linux 명령어다.

 

새로운 파일이나 디렉터리가 생성될 때, 시스템은 기본 권한을 할당한 후

이 권한을 umask에 의해 수정한다.

 

권한 이해하기

linux에서 권한은 세 가지 유형이 있으며, 권한은 세트로 구분된다.

읽기(r) 파일이나 디렉터리의 내용을 볼 수 있다.
쓰기(w) 파일이나 디렉터리의 내용을 수정할 수 있다.
실행(x) 파일을 실행하거나 디렉터리에 접근할 수 있다.
사용자(u) 파일의 소유자
그룹(g)  파일이 속한 그룹
기타(o) 모든 다른 사용자

각 세트는 세 개의 비트(읽기, 쓰기, 실행)를 가지고 있어 총 9개의 비트로 구성된다.

 

umask의 작동 원리

기본적으로 파일은 666 권한(rw-rw-rw-), 디렉터리는 777(rwxrwxrwx) 권한으로 생성된다.

umask는 이러한 기본 권한에서 특정 비트를 제거한다.

 

예를 들어, umask가 022면, 새로 생성된 파일은 644(rw-r--r--) 권한을 갖게 되고,

디렉터리는 755(rwxr-xr-x) 권한을 갖게 된다.

 

umask는 4자리의 8진수로 표현된다. 각 자리의 의미는 다음과 같다.

첫 번째 자리 특수 권한 (잘 사용되지 않는다.)
두 번째 자리 소유자 권한
세 번째 자리 그룹 권한
네 번째 자리 기타 사용자 권한

 

예시

1. 현재 umask를 먼저 확인한다.

umask

2. 새로운 umask를 설정한다.

umask 027

 

이는 새로운 파일이 640(r2-r-----), 디렉터리가 750(rwxr-x---) 권한을 가지도록 설정한다.

 

728x90
반응형