사용자 목록(user1, user2, user3, superuser)이 있습니다. user1, user2 및 user3은 다음과 같은 사용자 그룹에 속합니다.일반 사용자. 이제 사용자에 대한 액세스 제어 목록 명령을 실행해야 합니다.뿌리사용자(user1, user2, user3)의 홈페이지를 봅니다. 아래와 같이 setfacl 명령이 있습니다.
setfacl -m user:superuser:rx /home/user1
위의 명령은 잘 작동합니다. 사용자뿌리user1 디렉터리에 대한 액세스 권한이 있습니다. 이제 나머지 사용자에게도 권한을 부여해야 합니다. 홈 디렉터리 내의 모든 사용자에게 ACL 규칙을 적용하고 싶습니다. 그래서 다음 명령을 내렸습니다.
setfacl -m user:superuser:rx /home/
그러나 위 명령으로는 모든 사용자를 볼 수 없습니다. 특정 그룹에 속한 모든 홈 디렉토리에 액세스하기 위해 setfacl 명령을 수정하는 것이 가능한지 알고 싶습니다.
답변1
--recursive 스위치가 필요합니다.
setfacl -R -m user:superuser:rx /home/
그렇지 않은 경우 변경하려는 유일한 것은 /home
acl 디렉토리입니다.
답변2
ACL은 디렉터리와 파일에 적용됩니다. 적어도 직접적으로는 그룹에 적용할 수 없습니다. find와 연결하여 그룹이 소유한 모든 파일/디렉토리에 적용할 수 있습니다.
find /home -group «some-group» -type d -exec setfacl -m u:superuser:rx '{}' '+'