본문 바로가기
리눅스와 서버/리눅스 기초

리눅스에서 권한이란?

by 빈스터디 2023. 2. 3.

권한이란?

리눅스의 모든 파일과 디렉토리는 권한을 가지고 있다.

권한을 통해 시스템 상에 존재하는 파일들의 읽기, 쓰기, 실행에 대한 접근 여부를 결정한다.

명령어 'ls -l'을 입력하여 확인 할 수 있다.

첫 번째 문자는 해당 파일의 종류를 의미한다.

두 번째~ 열 번째 문자는 권한을 나타낸다.

두 번째부터 열 번째 문자는 3개씩 끊어읽는다.

띄어쓰기로 구분된 1, root, root는 각각 소유자, 관리그룹, 나머지이다.

각 문자의 의미는 다음과 같다.

r : 읽기 권한

w : 쓰기 권한

x : 실행 권한

- : 권한이 없음

따라서, 모든 권한이 있으면  'rwx'가 된다.

 

 

권한 설정 방법

간단한 문자로 설정하는 심볼릭 모드, 0~7까지의 숫자를 이용하는 옥텟(8진수)모드가 있다.

권한 설정 관련 명령어는 chmod이다. 명령어 구조는  chmod  [권한]  [파일 또는 디렉토리 이름] 이다.

 

심볼릭 모드

심볼릭 모드 예시

 

옥텟 모드

r : 4, 읽기 권한

w : 2, 쓰기 권한

x : 1, 실행 권한

옥텟 모드 예시

 

권한 설정, umask

파일이랑 디렉토리를 생성할 때, 초기 권한을 결정하는 역할을 한다.

기본적으로 umask 값은 0022로 설정되어 있다.

umask 값 확인하기

따라서 파일의 경우 기본권한이 옥텟 모드로 '644'이고,

디렉토리의 경우 기본권한이 옥텟 모드로 '755'이다.

 

파일은 666에서, 디렉토리는 777에서 시작한다.

파일이 666으로 실행권한이 빠져있는 이유는, 프로그램을 실행함으로써 문제가 생기는 것을 막기 위함이다.

 

umask 값은 umask 명령어를 사용하여 변경 가능하지만 재부팅하면 0022로 초기화된다.

umask 값 변경하기