Estamos executando uma loja Rocky Linux 8.9 (essencialmente RHEL 8.9) e recebi a tarefa de investigar ACLs em sistemas de arquivos montados via NFS. Também estamos usando FreeIPA/IdM.
Configurei uma máquina de teste, inscrevi-a no IdM, exportei um compartilhamento NFS e montei-a localmente, mas a parte ACL parece estar faltando:
[root@example ~]# cat /etc/exports
/export/ *(rw,acl,no_root_squash)
[root@example ~]# mount | grep /export
localhost:/export on /mnt type nfs4 (rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp6,timeo=600,retrans=2,sec=sys,clientaddr=::1,local_lock=none,addr=::1)
[root@example ~]# cd /mnt/
[root@example mnt]# touch testfile
[root@example mnt]# getfacl testfile
# file: testfile
# owner: root
# group: root
user::rw-
group::r--
other::r--
[root@example mnt]# setfacl -m u:user:r testfile
setfacl: testfile: Operation not supported
Algumas perguntas:
- Foi entendido corretamente que eu deveria usar
getfacl
esetfacl
em vez de seus equivalentes nfs4_, já que tanto o cliente quanto o servidor são Linux/POSIX? - Eu preciso do idmapd? Eu tenho um serviço chamado nfs-idmapd em execução com sucesso.
- Li em algum lugar que
sec=sys
deveria ser substituídoseckrb5
durante a montagem.
ATUALIZAR:
Investiguei um pouco mais e tive um pequeno avanço: nfsv4_set*acl
funciona bem no compartilhamento NFS, desde que se use UIDs ou GIDs numéricos. É o acoplamento à IdM/Kerberos que está causando problemas.