지금까지 ls -l 명령어로 확인할 수 있는 파일과 디렉토리의 정보 중에서
권한과 특수권한, 소유권에 대해서 알아봤습니다.
이번에는 접근 제어 목록을 뜻하는 ACL에 대해 알아보겠습니다.
ACL
ACL은 파일과 디렉토리의 확장 속성입니다.
사용자, 그룹, 그외에 대한 소유권을 변경했던 chmod 보다 더 다양한 권한을 부여할 수 있고,
chmod의 권한을 건드리지 않고 특정 사용자에게만 권한을 부여할 수 있습니다.
setfacl
setfacl 명령어는 파일과 디렉토리의 ACL 설정을 수정할 때 사용합니다.
setfacl [옵션] [권한] [파일/디렉토리] | ||
옵션
|
m | 권한변경 |
x | 개별 사용자 권한 변경 | |
b | 전체사용자 권한 변경 | |
권한
|
user | u:[유저명]:[권한(rwx)] |
group | g:[그룹명]:[권한(rwx)] | |
other | o:[other명]:[권한(rwx)] |
기본적인 setfacl 설정을 해봅시다.
other 권한이 0인 test 디렉토리에 대해서
사용자 a는 읽기와 실행이 가능하도록 권한을 바꿀겁니다.
test 디렉토리의 권한이 rwx rwx --- 로 되어있습니다.
other 사용자는 test 디렉토리에 접근조차 불가능한 상태입니다.
setfacl -m u:a:rx test 명령어로
test 디렉토리에 대해 사용자 a는 읽고 쓸 수 있도록 바꿔봅시다.
rwx rwx r-x 로 바뀌었는데 마지막에 + 기호가 붙었습니다.
getfacl
getfacl 명령어는 파일과 디렉토리의 ACL 설정을 확인할 때 사용합니다.
이 명령어를 사용해서 위에서 설정한 내용을 확인해봅시다.
getfacl 파일명
other에 대한 권한은 --- 이지만 user a 의 권한은 r-x 로 되어있습니다.
test 디렉토리 안에 있는 파일들을 조작하면서
권한 설정이 제대로 됐는지 확인해봅시다.
test 디렉토리 안에는
소유주가 root인 a 디렉토리와 a.txt 파일
소유주가 a인 aa.txt 파일이 있습니다.
cd test 명령어로 디렉토리 실행과
touch 명령어로 디렉토리와 파일 읽기를 해봅시다.
접근할 수 없었던 디렉토리가 setfacl 설정 후에는 잘 실행이 됩니다.
소유주가 root인 a 디렉토리와 a.txt 파일은 읽을 수 없었지만
소유주가 본인인 aa.txt 파일은 읽을 수 있습니다.
[K-Digital Training, 애티버스러닝 교육 내용을 정리한 포스팅입니다.]
'Linux > 파일 및 디렉토리 관리' 카테고리의 다른 글
리눅스 파일 권한 ⑤특수 권한 setuid, setgid, stikybit (0) | 2023.03.06 |
---|---|
리눅스 파일 권한 ④권한 변경 chown chmod 비교, 예시 (0) | 2023.03.05 |
리눅스 파일 권한 ③권한 변경 umask 계산방법 (2) | 2023.03.04 |
리눅스 파일 권한 ②권한 변경 chmod (0) | 2023.03.03 |
리눅스 파일 권한 ① ls -l 의 의미 (0) | 2023.03.02 |