Kann ich die umask auf ein bestimmtes Verzeichnis setzen?

3708
mipadi

Ich habe eine ziemlich restriktive umask-Einstellung (0077). Dies ist in Ordnung, außer dass ich ein Verzeichnis habe, in dem ich eine Einstellung (0002) für alle Dateien wünschen möchte, die an einem beliebigen Ort in diesem Verzeichnis erstellt wurden. Gibt es eine Möglichkeit, eine umask für ein bestimmtes Verzeichnis festzulegen, sodass alle darunter erstellten Dateien dieselben Berechtigungen erben?

7

1 Antwort auf die Frage

4
bshea

Verwenden Sie ACLs

setfacl -d -m Maske: 002 / dein / dir / hier /

http://man-wiki.net/index.php/1:setfacl

Wenn Sie einen Standard für ein Login wünschen, fügen Sie einfach eine "umask 002" zu Ihrer .bashrc (oder der von Ihnen verwendeten Shell) hinzu. Alle neuen Verzeichnisse verwenden diese Option, wenn sie unter dieser Umgebung angemeldet sind.

Nur ein Hinweis: ACLs übersetzen nicht über ein Netzwerk. (Samba / NFS) ... Sie müssen dazu die einzelnen Netzwerk-Konfigurationsdateien für das spezifische Verzeichnis hinzufügen. (dh smb.conf - create mask = 775) bshea vor 13 Jahren 0
Eigentlich unterstützen AFAIU NFS3 & NFS4 (einige?) ACLs (zumindest unter Linux)? JanC vor 13 Jahren 1
Und so tut Samba ... JanC vor 13 Jahren 1
Das musste ich schon lange nicht mehr ausprobieren. Sicher ist sicher (!) Gut zu wissen. Vielen Dank. bshea vor 13 Jahren 0
Dies ist für Mac OS X. mipadi vor 13 Jahren 0
http://serverfault.com/questions/6607/propagate-removal-of-an-acl-entry-für-just-one-one-one-in-mac-os Sie müssen 'chmod' verwenden, wenn setfacl nicht verfügbar ist bash bshea vor 13 Jahren 1