5.2. 액세스 ACL 설정
ACL에는 액세스 ACL과 기본 ACL 의 두 가지 유형이 있습니다. 액세스 ACL은 특정 파일 또는 디렉터리의 액세스 제어 목록입니다. 기본 ACL은 디렉터리와만 연결할 수 있습니다. 디렉터리 내의 파일에 액세스 ACL이 없는 경우 디렉터리에 대한 기본 ACL의 규칙을 사용합니다. 기본 ACL은 선택 사항입니다.
ACL을 구성할 수 있습니다.
- 사용자당
- 그룹당
- 효과적인 권한 마스크를 통해
- 파일의 사용자 그룹에 없는 사용자의 경우
setfacl
유틸리티는 파일 및 디렉터리에 대한 ACL을 설정합니다. m 옵션을 사용하여 파일 또는 디렉터리의 ACL을 추가하거나 수정합니다.
# setfacl -m rules files
규칙(규칙)은 다음 형식으로 지정해야 합니다. 동일한 명령에서 쉼표로 구분된 경우 여러 규칙을 지정할 수 있습니다.
u:uid:perms
- 사용자의 액세스 ACL을 설정합니다. 사용자 이름 또는 UID를 지정할 수 있습니다. 사용자는 시스템에서 유효한 사용자일 수 있습니다.
g:gid:perms
- 그룹에 대한 액세스 ACL을 설정합니다. 그룹 이름 또는 GID를 지정할 수 있습니다. 그룹은 시스템에서 유효한 그룹일 수 있습니다.
m:perms
- 효과적인 권한 마스크를 설정합니다. 마스크는 소유 그룹의 모든 권한과 모든 사용자 및 그룹 항목을 통합합니다.
o:perms
- 파일에 대해 그룹에 있는 그룹 이외의 사용자에 대해 액세스 ACL을 설정합니다.
권한(ms)은 읽기, 쓰기, 실행의 경우 r
,w
, x
의 조합이어야 합니다.
파일 또는 디렉터리에 이미 ACL이 있고 setfacl
명령이 사용되는 경우 기존 ACL에 추가 규칙이 추가되거나 기존 규칙이 수정됩니다.
예 5.1. 읽기 및 쓰기 권한 제공
예를 들어 사용자 및rius에 읽기 및 쓰기 권한을 제공하려면 다음을 수행합니다.
# setfacl -m u:andrius:rw /project/somefile
사용자, 그룹 또는 기타 기타에 대한 모든 권한을 제거하려면 -x
옵션을 사용하고 권한을 지정하지 마십시오.
# setfacl -x rules files
예 5.2. 모든 권한 제거
예를 들어 UID가 500인 사용자의 모든 권한을 제거하려면 다음을 실행합니다.
# setfacl -x u:500 /project/somefile