처음에는 파일을 만들고 표준 권한 및 ACL 항목을 확인합니다.
$ touch file; ls -l file; getfacl file
-rw-r--r-- 1 user user 0 Jul 30 16:26 file
# file: file
# owner: user
# group: user
user::rw-
group::r--
other::r--
그런 다음 파일에 ACL 마스크를 설정하고 표준 권한 및 ACL 항목을 다시 확인하십시오.
$ setfacl -m mask:rwx file
$ ls -l file; getfacl file
-rw-rwxr--+ 1 user user 0 Jul 30 16:26 file
# file: file
# owner: user
# group: user
user::rw-
group::r--
mask::rwx
other::r--
파일에 대한 ACL 마스크 표준 그룹 권한과 함께 변경되었습니다.
- ACL 마스크와 표준 그룹 권한 사이에는 어떤 연결이 있습니까?
- ACL 마스크와 파일 그룹 권한을 결합한 이유는 무엇입니까? 그 뒤에 어떤 논리가 놓여 있습니까?
해당 배포판은 Debian Linux 7.6 및 CentOS 7입니다.
편집하다
이 시점에서 나는 표준 파일 그룹 권한과 ACL 마스크 사이의 관계를 조사하면서 내가 찾은 몇 가지 발견을 공유하고 싶었습니다. 내가 찾은 경험적 관찰은 다음과 같습니다.
ACL 마스크는 다음과 같이 변경할 수 있습니다.
setfacl -m m:<perms>
명령 으로 직접 설정하여 ;chmod
명령을 사용하여 파일 그룹 권한을 변경하여 (ACL 마스크가 이미있는 경우, 파일에 대해 명명 된 사용자 또는 그룹 ACL 권한이없는 경우 선택 사항이므로 존재하지 않을 수 있음);- 명명 된 사용자 또는 그룹 ACL 항목을 추가하여 (마스크가 자동으로 다시 계산 됨)
마스크는 setfacl 또는 chmod (자동 계산되지 않음)를 사용하여 파일 그룹 권한을 수정하여 마스크를 직접 설정 한 경우에만 최대 액세스 권한 (ACL 마스크 권한을 초과하는 ACL 항목이있는 경우)을 적용합니다. ACL 항목을 변경하면 ACL 마스크 자동 재 계산이 트리거되고 "강제 모드"가 효과적으로 꺼집니다.
ACL을 사용할 때 표준 파일 그룹 권한에 암시 적으로 영향을 미치는 몇 가지 부작용이 있습니다.
- 파일에 적용된 명명 된 사용자 또는 그룹 ACL 항목은 ACL 마스크를 변경하여 (권한을 증가시킵니다) 따라서 효과적인 파일 그룹 권한을 가질 수 있습니다. 예를 들어, 파일 소유자로서 "rw-r--r-- jim 학생"권한이 설정되어 있고 사용자 "jack"에게 rw 권한을 부여하면 모든 사람에게 rw 권한도 내재적으로 부여합니다. "학생"그룹에서.
- 엄격한 (권한이없는) ACL 마스크는 해당 표준 파일 그룹 권한을 영구적으로 제거 할 수 있습니다. 예를 들어 rw 표준 파일 그룹 권한이있는 파일이 있고 파일에 읽기 전용 ACL 마스크를 적용하면 그룹 권한이 읽기 전용으로 줄어 듭니다. 그런 다음 모든 확장 ACL 항목을 제거하면 (
setfacl -b
명령 포함) 그룹 권한은 읽기 전용으로 유지됩니다. 이는 엄격한 ACL 마스크에만 적용되며, 더 부드러운 ACL 마스크 (추가 권한)는 원래 파일 그룹 권한이 제거 된 후에 영구적으로 변경하지 않습니다.