NFS-ACLs gelten nicht für Root

NFS-ACLs gelten nicht für Root

Ich verwende CIFS schon seit langem für mein Netzwerk und möchte NFS für meine Linux-zu-Linux-Dateiverteilung verwenden. Ich habe ein freigegebenes Laufwerk, auf dem ich eine Sticky-Gruppe eingerichtet habe, die beim Mounten über NFS einwandfrei zu funktionieren scheint, außer wenn Root schreibt.

Auf dem Dateiserver gibt es ein Verzeichnis namens media, das ich Anwenden der ACLs setfacl -d -m u::rwx,g::rwx,o::r-x Mediaan, also sieht es so aus:

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

und die Ausführung von Aktionen funktioniert wie erwartet:

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

Beim Mounten über NFS werden die ACLs anscheinend nicht angewendet, sodass es beim Ausführen einer Sudo-Touch-Datei folgendermaßen aussieht:

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

Es scheint also, dass NFS4 es automatisch an den Client weitergeben sollte, und durch Ausführen nfs4_getfacl Mediakann ich die Berechtigungen sehen:

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

Das sagt mir nunindem man dem Mann folgtdass eigentlich alle Berechtigungen vererbt werden sollten, in diesem Fall ist dies aber nicht der Fall.

Hinweise, die zeigen, dass es mit den vorhandenen ACLs gemountet werden sollte.

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)

Aktualisieren: Der Inhalt der Exporte wurde hinzugefügt, da dies ein potenzielles Problem war.

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

Antwort1

Klassisches NFS behandelt den Root-Benutzer speziell. Sie können versuchen, die no_root_squashOption in Ihrer Exportdatei auf dem Server zu setzen. Sieheman exports

verwandte Informationen