Skip to main content

퍼미션, u-mask


1. 퍼미션

리눅스에서 퍼미션(Permission) 이란,
파일이나 디렉터리에 대해 누가 무엇을 할 수 있는지를 지정하는 접근 권한(Access Right) 이다.


1.1 퍼미션 권한 종류

리눅스는 각 파일/디렉토리에 대해 다음 3가지 권한을 설정한다:

권한

설명

기호

읽기 (Read)

파일 내용 보기 / 디렉토리 목록 보기

r

쓰기 (Write)

파일 내용 수정 / 디렉토리에 파일 생성, 삭제

w

실행 (Execute)

파일 실행 / 디렉토리 접근

x


1.2 퍼미션의 주체

각 권한은 다음 3가지 사용자 범주에 대해 각각 설정된다:

사용자

설명

소유자 (User, u)

해당 파일을 만든 사용자

그룹 (Group, g)

파일이 속한 그룹의 사용자

기타 (Others, o)

그 외 모든 사용자


1.3 퍼미션 숫자 표기 (8진수 방식)

권한

r

4

w

2

x

1

조합해서 3자리 숫자로 표시한다:

  • rwx → 4+2+1 = 7
  • rw- → 4+2+0 = 6
  • r-- → 4+0+0 = 4

예: chmod 754 file.txt
→ 사용자: rwx(7), 그룹: r-x(5), 기타: r--(4)


1.4 퍼미션 명령어

명령어

설명

ls -l

파일의 퍼미션 보기

chmod

퍼미션 변경 (chmod 755 파일)

chown

소유자 변경 (chown user 파일)

chgrp

그룹 변경 (chgrp group 파일)


1.5 예시

리눅스에서 퍼미션을 바꿀 때 사용하는 chmod 명령어는 두 가지 방식이 있다:

  • 1. 기호(Symbolic) 방식: u+x, g-w
  • 2. 8진수(Numeric) 방식: 644, 755

명령어 + 퍼미션 + 파일명

chmod u+x hello.sh

→ 현재 사용자에게 실행 권한 추가

chmod 644 report.txt

rw-r--r-- 설정 (작성자: 읽기/쓰기, 나머지: 읽기만)


2. U Mask란?

"User File Creation Mask" 의 줄임말이다.
사용자가 새 파일이나 디렉터리를 생성할 때 기본 퍼미션에서 차감할 권한을 지정한다.


2.1 리눅스 기본 생성 권한
  • 파일: 기본 최대 권한 = 666 (rw-rw-rw-)
  • 디렉토리: 기본 최대 권한 = 777 (rwxrwxrwx)

파일은 기본적으로 실행(x) 권한이 부여되지 않음!

실제 권한=기본 권한−umask 값


image.png


참고 자료

  • 흥달쌤 계산식 특강