본문 바로가기

Server/Linux

[Linux] 파일 시스템의 권한(Permission) 및 소유권(ownership)

반응형

리눅스의 권한은 허가권을 가지고 수행하는 것으로,

소유권과 허가권은 파일 및 디렉터리에 따로 설정 가능하다.

 


권한(Permission)


- 멀티 유저 환경에서 개체(파일, 디렉터리 등)에 접근할 수 있는 자격

- 개체를 읽거나(read), 쓰거나(write), 실행(execute)하는 행위

- 사용자(user), 사용자 그룹(group), 나머지 사용자(other) 단위로 권한을 부여함

 

ls -l [파일명]

: Permission 확인

- 파일 형식을 제외한 10자리의 문자

 

 

소유권(Ownership)


- 앞에서부터 3자리씩 소유자(user), 소속 그룹(group), 나머지 사용자(other)로 구분함

- 마지막(10번째 문자) . 은 확장권한(권한 ACL)을 나타냄 

 

 

Permission 종류

문자 허가권 파일 디렉터리
r 읽기 내용을 읽을 수 있는 권한 디렉터리 목록 확인 권한
w 쓰기 쓰거나 삭제할 수 있는 권한 디렉터리 안에서 파일을 생성, 삭제할 수 있는 권한
x 실행 실행파일(바이너리 파일)에 대한 실행 권한 디렉터리의 경로 변경, 디렉터리 안에 있는 항목을 읽을 수 있는 권한

 

Permission 정보 확인

- Linux 시스템의 모든 개체(파일 및 디렉터리)는 소유자와 소속그룹이 지정되어 있음

- 소유자 및 소속 그룹을 이름으로 확인 : # ls -l

- 소유자(uid) 및 소속그룹(gid)을 id로 확인 : # ls -n

 

Permission 인증 절차

  1. 사용자가 xxx.txt 파일을 수정하기 위하여 쓰기 권한을 요청함
  2. xxx.txt 파일의 uid와 권한을 요청한 사용자의 uid를 비교함
  3. 일치하면 요청한 사용자를 파일의 소유주로 인정하고 소유주(user)의 permission을 부여함
  4. 일치하지 않으면 gid를 비교함
  5. gid가 일치하면 사용자를 파일의 소속그룹 멤버로 인정하고 소속그룹(group)에 할당된 permission을 부여함
  6. gid도 일치하지 않으면 나머지 사용자(other)에 해당하는 permission을 부여함

 


허가권(permission) 관리 명령어


chmod 파일의 허가권 변경
unmask 개체가 생성될 때 부여되는 기본 permission 설정
setuid 일시적으로 소유자의 권한으로 파일을 실행함
setgid 일시적으로 소속그룹의 권한으로 파일을 실행함
sticky bit 모든 권한 할당(단, 삭제는 소유주만 가능함)

 

소유권(ownership) 관리 명령어


chown 파일의 소유권 변경
chgrp 파일의 소속그룹 소유권 변경

 

 

chown [계정명] [파일명] 

: 개체(파일 및 디렉터리)의 소유자 변경

 

예시 )

 

 

chown [uid]:[gid] [파일명]

개체(파일 및 디렉터리)의 소유자와 소속그룹 변경

 

예시 )

 

 

chown -R [uid]:[gid] [파일명]

: 하위 디렉터리 및 파일 전체의 소유권 변경

 

예시 )

 

 

chgrp [option] [gid/그룹명] [파일명] 

: 개체(파일 및 디렉터리)의 소속그룹 변경

 


⌗ 문제

 


⌗ 풀이

 

  1. mkdir /permtest

  2. useradd linux1 -> useradd linux2

  3. chown linux1 /permtest

  4. echo 1235 > file1 -> mv file1 /permtest/

  5. chown linux1:linux1 /permtest/file1

 

반응형

❥ CHATI Github