Ordnerfreigaben über NFSv4 privat für Benutzergruppen

Ordnerfreigaben über NFSv4 privat für Benutzergruppen

Ich möchte einen Ordner über NFSv4 freigeben, der für einige Benutzer verfügbar ist, und ich habe Berechtigungsprobleme.

Ich habe die Ordnerberechtigungen mit setGID eingerichtet, sodass neue Dateien mit dem Eigentümer der Ordnergruppe erstellt werden. Benutzer können jedoch Dateien ohne Berechtigungen für die Gruppe erstellen (tatsächlich beträgt die UMASK der Standardbenutzer 700, sodass dies ständig passiert).

Ich habe versucht, mich zu bewerbenDiese Lösung verwendet ACLs, um die Verzeichnis-Umask zu erzwingen. Das habe ich getan, aber es funktionierte nicht wie erwartet. Ich habe auf derNFS-Wikidass normale ACLs über NFSv4 nicht funktionieren und dass ich NFS4-spezifische ACL-Tools verwenden muss.

Aber ich habe ein paar Probleme. Ich habe versucht, nfs4-acl-tools auf dem Server zu installieren und bekomme Folgendes:

# nfs4_getfacl /export/proyectos/
Operation to request attribute not supported.

Ja, die Partition wird mit ACL-Unterstützung gemountet.

/dev/mapper/mpath4-part1 /export/proyectos ocfs2 rw,relatime,_netdev,heartbeat=local,nointr,data=ordered,errors=remount-ro,usrquota,coherency=full,user_xattr,acl 0 0

Und normale ACLs funktionieren:

# getfacl /export/proyectos/
getfacl: Eliminando «/» inicial en nombres de ruta absolutos
# file: export/proyectos/
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
other::rwx
default:user::rwx
default:group::rwx
default:other::rwx

Ich habe den nfs4_getfacl wie vorgeschlagen aufdie Mailinglisteund bekam dies:

# strace nfs4_getfacl /export/proyectos
<stripped>
getxattr("/export/proyectos", "system.nfs4_acl", 0x0, 0) = -1 EOPNOTSUPP (Operation not supported)
<stripped>

Fragt nfs4_getfacl nach dem richtigen Flag? Ich dachte, dass nfs4_acls von keinem Dateisystem implementiert werden und dass nfs4 derzeit auf einer Art nfs4acl-posixacl-Mapping basiert. Aber ich bin mir nicht mehr sicher.

Antwort1

Sie müssen es getfaclauf dem NFS-Server verwenden (da Sie das lokale Dateisystem abfragen) und verwenden, nfs4_getfaclwenn Sie sich auf dem NFS-Client befinden.

NFSv4 ACL und Linux ACL acl(5) sind völlig unterschiedliche Standards! Der Linux NFS-Server übersetzt die ACL hin und her.

Beitrag lesenKeine ACL beim NFS-Mount unter Linux?.

verwandte Informationen