Você precisa da opção --recursiva:
setfacl -R -m user:superuser:rx /home/
Caso contrário, a única coisa que você está alterando é o /home
directory acl.
Eu tenho uma lista de usuários (user1, user2, user3, superusuário). user1, user2 e user3 pertencem a um grupo de usuários chamado normalusers . Agora, preciso emitir o comando da lista de controle de acesso para o usuário superusuário para visualizar as home pages dos usuários (user1, user2, user3). Eu tenho um comando setfacl como abaixo.
setfacl -m user:superuser:rx /home/user1
O comando acima funciona perfeitamente e o usuário superusuário tem acesso ao diretório user1. Agora, também preciso emitir os direitos para os demais usuários. Eu queria aplicar as regras da ACL a todos os usuários dentro do diretório inicial. Então, eu emiti o seguinte comando.
setfacl -m user:superuser:rx /home/
No entanto, o comando acima não me permitiu visualizar todos os usuários. Eu queria saber se o comando setfacl pode ser modificado para acessar todos os diretórios base pertencentes a um grupo específico.
As ACLs são aplicadas a diretórios e arquivos. Você não pode aplicá-las a um grupo, pelo menos não diretamente. Você pode aplicá-los a todos os arquivos / diretórios que um grupo possui, encadeando com find:
find /home -group «some-group» -type d -exec setfacl -m u:superuser:rx '{}' '+'
Tags permissions acl linux