Linux-Setfacl-Puzzle

435
Peter

Ich habe ein seltsames Problem mit einer ACL, die ich für meine VMs festgelegt habe. Meine VMS werden im Verzeichnis / shared / vms gespeichert. Die ACLs für dieses Verzeichnis sind:

getfacl . # file: . # owner: root # group: root user::rwx user:qemu:rwx group::rwx mask::rwx other::r-x default:user::rwx default:user:qemu:rwx default:group::rwx default:mask::rwx default:other::r-x 

Aus irgendeinem Grund, den ich wirklich nicht verstehen kann, hat meine neueste VM keine Berechtigungen für qemu:

getfacl ./demo.qcow2  # file: demo.qcow2 # owner: root # group: root user::rw- user:qemu:rwx #effective:--- group::rwx #effective:--- mask::--- other::--- 

Der Rootbenutzer umask ist der sehr liberale 0022. Der Desktopbenutzer, den ich für den virt-manager verwende, hat ein wenig restriktiveres 0007. Aber diese sollten keine effektive Maske von --- erstellen. !!!

Warum habe ich diese effektiven Berechtigungen?

3

1 Antwort auf die Frage

0
virtex

Die effektive Maske wird berechnet, indem Sie bitweise ANDzwischen den Berechtigungen und der Maske arbeiten. Da Ihre Maske aktiviert ist ---, werden alle Berechtigungsbits für von Ihnen erstellte benutzerdefinierte ACL-Einträge deaktiviert. Um dies zu beheben, müssen Sie die Maske folgendermaßen einstellen rwx:

setfacl -m m::rwx ./demo.qcow2 

Wiederholen Sie diesen Vorgang für alle Dateien, die über wirksame Berechtigungen verfügen, die nicht Ihren Wünschen entsprechen. Normalerweise wird die Maske bei jeder Änderung der ACL neu berechnet, diese Datei wurde jedoch möglicherweise mit der --no-maskOption erstellt oder die Maske wurde explizit festgelegt.

Bitte überprüfen Sie noch einmal das OP. Das Verzeichnis hat rwx als Standardmaske. Peter vor 6 Jahren 0