Posix ACLs erweitern die normalen DateiRechte. = Regeln = == Normale Dateirechte == `user::rwx`:: Rechte des Besitzers. `group::rwx`:: Rechte der Gruppe. `other::rwx`:: Rechte aller anderen. == Erweiterte Dateirechte == `user:<User>:rwx':: Rechte des definierten Benutzers. `group:<Gruppe>:rwx`:: Rechte der definierten Gruppe. `mask::rwx`:: ''Effective rights mask'' == Spezielle Rechte für Verzeichnise == `default:<Regel>`:: Neue Verzeichnisse/Dateien bekommen diese Rechten beim Erstellen zugewiesen. Dies überschreibt auch die [[umask]]. = Voraussetzungen = Um POSIX ACLs nutzen zu können, müssen folgende Voraussetzungen erfüllt sein: * Das Dateisystem muss ACLs unterstützen. Beispiele sind ext2 und ext3. Ob ein Dateisystem ACLs unterstützt, erfährt man über die Man-Seite von mount ([[http://linux.die.net/man/8/mount]]). * Der Dateisystemtreiber muss ACLs unterstützen. Bspw. unterstützt NTFS zwar ACLs, mit aktuellen Implementierungen von NTFS-Treibern für Linux ist es jedoch nicht möglich, diese ACLs zu benutzen. * Das Dateisystem muss mit den Optionen acl und user_xattr eingebunden worden sein. Ein Beispiel wie man ein Dateisystem mit ACL-Unterstützung richtig einbindet: {{{ mount /dev/hda2 /home -o acl,user_xattr }}} = Abfragen und Setzen von Posix ACLs = Das Abfragen geht mit {{{ getfacl Datei }}} Das Setzen funktioniert mit dem Befehl '''setfacl'''. Die Syntax lautet vereinfacht: {{{ setfacl -m user|group|mask:[name:]recht Datei }}} "user", "group" und "mask" können jeweils mit "u", "g" oder "m" abgekürzt werden. Bei '''name''' verwendet man den Namen des Benutzers oder der Gruppe, für den/die ein Recht gesetzt werden soll. Wird '''name''' ausgelassen, wird das Standarddateirecht gesetzt (Auswirkung gleich wie bei [[chmod]]). Bei '''recht''' kann eine Kombination aus "r", "w" und "x" (lesen/schreiben/ausführen, analog zu den Standardrechten) verwendet werden. Beispiel: {{{ setfacl -m u:foo:rw stromverbrauch.ods }}} Der Benutzer "foo" bekommt das Lese- und Schreibrecht für die Datei "stromverbrauch.ods". Das Löschen von Berechtigungen wird ebenfalls mit dem Befehl setfacl durchgeführt. Die Syntax lautet: {{{ setfacl -x user|group|mask:[name] Datei }}} [[http://www.vanemery.com/Linux/ACL/linux-acl.html| Ausfuerlicher Artikel zum Thema ]] (en) Stand 2005