본문 바로가기

학습 기록/리눅스 마스터 2급

[파일 시스템 관련 명령어] 권한 및 그룹 설정

리눅스 시스템의 모든 파일과 디렉터리에는 접근 권한과 소유권이 부여됨

 

파일 속성 (ls -l)

1) 파일 허가권

2) 물리적 파일 연결 개수

3) 파일 소유자명

4) 파일 소유 그룹명

5) 파일 크기(바이트 단위)

6) 파일 변경 시간

7) 파일명


[소유권(Ownership) 관련 명령어]

소유권

: 임의의 파일 또는 디렉터리에 대해 사용자와 그룹들의 소유 권한을 나타낸 것

 

그룹

: 사용자들의 시스템 운영 특성에 따라 묶어 놓은 것

: 같은 그룹에 속한 사용자들은 파일 또는 디렉터리에 대해 동일한 소유권과 작업 권한을 갖음

 

1) 명령어 chown

chown [옵션] 소유자 [:그룹명] 파일명

: 파일과 디렉터리의 사용자 소유권과 그룹 소유권을 변경

* 그룹 소유권 변경 시 그룹명 앞에 : 필요

 

* 옵션

- -R : 하위 디렉터리를 포함하여 디렉터리 내부의 모든 파일의 소유권 변경

 

2) 명령어 chgrp

chgrp [옵션] 그룹명 파일명

: 파일이나 디렉터리의 그룹 소유권 변경

: 그룹 소유권만 변경 가능

 

* 옵션

- -R : 하위 디렉터리를 포함하여 디렉터리 내부의 모든 파일의 소유권 변경


[허가권(permission)과 관련된 명령어]

- ls -l [ ' - rw-rw-r--' : 파일 유형 + 허가권 ] 을 통해 파일 유형과 허가권을 알 수 있음

 

파일 유형 (파일 허가권의 첫 번째 자리)

: 파일은 일반 파일, 디렉터리 파일, 특수 파일로 나뉨

 

- 일반 파일 : -

- 디렉터리 파일 : d

- 특수파일

b : 블록 단위로 읽고 쓰는 블록 장치 특수 파일

c : 문자 단위로 읽고 쓰는 문자 장치 특수 파일, 입출력 파일

l : 기호적 링크로 바로가기 아이콘 역할 수행, 심볼릭 링크 파일

p : 파이프

s : 소켓

 

파일 접근 권한 (파일 허가권의 2~10번째 자리)

: 사용자별로 파일 권한 부여

: 파일 사용자는 파일 소유자 + 그룹 소속자 + 기타 사용자로 구분

: 파일 권한은 읽기, 쓰기, 실행으로 존재

: 접근 제한 표시는 하이픈(-)으로 표시

: 사용자별 권한은 기호모드 또는 8진수 숫자 모드로 표시

: 파일의 기본 권한은 666, 디렉터리의 기본 권한은 777로 정해져 있음

  사용자 권한 그룹 권한 기타 사용자 권한
기호 모드 r w x r w x r w x
8진수 숫자 모드 4 2 1 4 2 1 4 2 1

 

1) 명령어 chmod

chmod [옵션] 파일명

: 파일이나 디렉터리의 접근 허가권을 변경하는 명령어

: 권한 변경은 숫자 모드와 기호 모드 존재

 

* 옵션

- -R : 하위 디렉터리에 포함되어 있는 모든 디렉터리 및 모든 파일의 권한 변경

 

* 숫자 모드

기호 숫자(2진수) 숫자(8진수) 의미
rwx 111 7 읽기, 쓰기, 실행
rw- 110 6 읽기, 쓰기
r-x 101 5 읽기, 실행
r-- 100 4 읽기
-wx 011 3 쓰기, 실행
-w- 010 2 쓰기
--x 001 1 실행
--- 000 0 권한 없음

 

* 기호 모드

기호모드 의미 적용 예제
사용자 u 소유자 * chmod u+w
: 소유자에게 쓰기 권한 부여

* chmod u-x
: 소유자에게 실행 권한 제거

* chmod o=rx
: 기타 사용자에게 읽기와 실행 권한 부여
g 그룹
o 기타 사용자
a 모든 사용자
연산자 + 허가권 부여
- 허가권 제거
= 특정 사용자에게 허가권 지정
권한 r 읽기
w 쓰기
x 실행

 

2) 명령어 umask

umask [옵션] [값]

: 새로 생성되는 파일이나 디렉터리의 기본 허가권 값 지정

: 디폴트 권한 값을 변경 (파일 666, 디렉터리 777)

: 파일이나 디렉터리 생성 시 디폴트 권한 값에서 설정한 umask값을 뺀 값을 기본 허가권으로 설정

 

* 옵션

- -S : umask값을 문자로 표기

 

umask 적용 방법

: 허가권 umask 값에 보수를 취한 다음 AND 연산으로 권한 설정

* AND 연산은 둘 다 1인 경우 1