OS/Linux 기초

13. ACL (Access Control List)

yeommm 2019. 9. 1. 17:09

 

ACL이란 접근 제어 목록으로, 파일이나 디렉토리의 확장 속성 중 하나이다.

특정 사용자 혹은 그룹의 권한을 파일이나 디렉토리에 줄 수 있는 기능이다.

즉, 파일에 ACL 설정을 함으로써 여러 사용자가 그 파일을 소유할 수 있도록 할 수 있다.

 

(1) ACL 확인 

getfacl file1

-> acl 설정 이전 기본 정보는 ls 명령어 결과과 동일하다.

-> acl 설정 이후에는 ls 명령어로 정확한 확인이 불가능하기 때문에 getfacl 명령으로 확인을 진행해야 한다.

 

 

(2) ACL 설정

setfacl [option] [] file

                

*옵션 및 형식

-m : acl 추가/수정

 1. 특정 사용자를 대상으로 ACL 설정

   -> setfacl -m u:uid:권한 /file1

 2. 그룹을 대상으로 ACL 설정

   -> setfacl -m g:gid:권한 /file1

 3. 다른 사용자(other)에 대해 ACL 설정

   -> setfacl -m o:권한 /file1

 

-x : acl 삭제

   ->setfacl -x u:uid /file1

 

-b 옵션: 모든 acl 삭제 (지정한 권한 모두 삭제)

   -> setfacl -b /file1

 

-R : 하위 디렉토리/파일까지 acl 변경

 

ex) setfacl -m u:korea:rwx /file1

     setfacl -o:r-x /file2

     setfacl -x u:korea /file1

     setfacl -b /file1