Las ACL de NFS no se aplican a la raíz

Las ACL de NFS no se aplican a la raíz

He estado usando CIFS para mi red durante mucho tiempo y me gustaría usar NFS para mi distribución de archivos de Linux a Linux. Tengo una unidad compartida en la que configuré un grupo fijo, que parece funcionar bien cuando se monta a través de NFS, excepto cuando root está escribiendo.

Entonces, en el servidor de archivos hay un directorio llamado media que he realizado aplicando las ACL setfacl -d -m u::rwx,g::rwx,o::r-x Mediaencendido, por lo que se ve así:

drwsrwsrwx+ 16 chrishunter users  4096 Sep 25 06:10 Media

y realizar acciones funciona como se esperaba:

chrishunter@server:/media/disk1/Media$ touch file
chrishunter@server:/media/disk1/Media$ sudo touch file2
[sudo] password for chrishunter: 
chrishunter@server:/media/disk1/Media$ sudo su
root@server:/media/Media# touch file3
root@server:/media/Media# ls -ltra file*
-rw-rw-r-- 1 chrishunter users 0 Sep 26 05:51 file
-rw-rw-r-- 1 root        users 0 Sep 26 05:51 file2
-rw-rw-r-- 1 root        users 0 Sep 26 05:52 file3

Ahora el montaje a través de NFS no parece aplicar las ACL, por lo que cuando ejecuto un archivo sudo touch se ve así:

chrishunter@client:/mnt/Media$ touch file
chrishunter@client:/mnt/Media$ sudo touch file2
[sudo] password for chrishunter: 
chrishunter@client:/mnt/Media$ sudo su
root@client:/mnt/Media# touch file3
root@client:/mnt/Media# ls -ltra file*
-rw-rw-r-- 1 chrishunter users 0 Sep 26 06:09 file
-rw-r--r-- 1 root        users 0 Sep 26 06:10 file2
-rw-r--r-- 1 root        users 0 Sep 26 06:10 file3

Entonces parece que NFS4 debería propagarlo al cliente automáticamente y al ejecutarlo nfs4_getfacl Mediapuedo ver los permisos:

A::OWNER@:rwaDxtTcCy
A::GROUP@:rwaDxtcy
A::EVERYONE@:rxtcy
A:fdi:OWNER@:rwaDxtTcCy
A:fdi:GROUP@:rwaDxtcy
A:fdi:EVERYONE@:rxtcy

Ahora esto me dicesiguiendo al hombreque realmente todos los permisos deberían heredarse, pero en este caso no es así.

Notas que muestran que debe montarse con las ACL en su lugar.

chrishunter@server:/media/disk1/Media# tune2fs -l /dev/dm-0 | grep "Default mount options:"
Default mount options:    acl

chrishunter@server:/media/disk1/Media# mount |grep media
/dev/mapper/vg1-lv1 on /media/disk1/Media type ext4 (rw,acl)

Actualizar: Se agregó el contenido de las exportaciones ya que este era un problema potencial.

/media/Media 192.168.0.0/24(rw,no_root_squash,anonuid=1000,anongid=1000,sync,no_subtree_check‌​)

Respuesta1

NFS clásico maneja especialmente al usuario root. Puede intentar configurar la no_root_squashopción en su archivo de exportaciones en el servidor. Verman exports

información relacionada