Die Benutzerdateierstellungsmodusmaske (umask) ist ein eingebauter Shell-Befehl, der verwendet werden kann, um Standardwerte für die Lese-/Schreib-/Ausführungsberechtigungen für neu erstellte Dateien festzulegen. Es sollte entweder in den Shell-Startdateien „.cshrc“ oder „.profile“ ausgeführt werden.
Es erhält einen dreistelligen Oktalwert, der die binäre Umkehrung der Berechtigungen darstellt, die Dateien zugewiesen werden können. Dieses dreistellige numerische Argument stellt den Zugriff dar, der „gesperrt“ oder „ausgeblendet“ werden soll, wenn eine Datei erstellt wird.
Wenn eine Datei erstellt wird, werden ihre Berechtigungen auf das gesetzt, was das erstellende Programm verlangt, abzüglich dessen, was die Einstellung „umask“ verbietet. Daher ist der gewünschte Wert das Oktalkomplement des gewünschten numerischen Dateimodus. Die Ziffern geben die unten gezeigten Berechtigungen an:
Oktal | Binär | Berechtigungen |
---|---|---|
0 | 000 | rwx |
1 | 001 | rw- |
2 | 010 | r-x |
3 | 011 | r– |
4 | 100 | -wx |
5 | 101 | -w- |
6 | 110 | –x |
7 | 111 | (keine) |
Änderung der „umask“
Um den gewünschten Wert zu bestimmen, berechnen Sie einfach das numerische Äquivalent für den Dateimodus, den Sie erhalten möchten, und subtrahieren Sie es dann von 777.
Um beispielsweise standardmäßig den Modus 751 zu erhalten, berechnen Sie 777-751=026 – das ist der Wert, den Sie „umask“
geben% umask 026
Sobald dieser Befehl ausgeführt wird, erhalten alle zukünftig erstellten Dateien diesen Schutz automatisch.
Eine andere Möglichkeit, „umask“-Werte zu berechnen, besteht darin, daran zu denken, dass die Zahl 2 in „umask“ die Schreibberechtigung deaktiviert, während die Zahl 7 die Lese-, Schreib- und Ausführungsberechtigung deaktiviert.
Allgemeine „Unmask“-Werte
Standardmäßig geben die meisten UNIX-Versionen einen Oktalmodus von 666 an (jeder Benutzer kann die Datei lesen oder schreiben), wenn sie neue Dateien erstellen. Ebenso werden neue Programme mit einem Modus von 777 erstellt (jeder Benutzer kann das Programm lesen, schreiben oder ausführen).
Die gebräuchlichsten umask-Werte sind 022, 027 und 077. Ein umask-Wert von 022 lässt den Eigentümer alle neu erstellten Dateien sowohl lesen als auch schreiben, aber alle anderen können sie nur lesen:
- 0666 :Standard-Dateierstellungsmodus.
- 022 :resultierender Modus.
- 0644 :resultierender Modus.
Ein umask-Wert von 077 lässt nur den Eigentümer der Datei alle neu erstellten Dateien lesen:
- 0666 :Standard-Dateierstellungsmodus.
- 077 :umask.
- 0600 :resultierender Modus.
Auf vielen UNIX-Systemen ist die Standard-Umask 022. Diese wird vom Init-Prozess geerbt, da alle Prozesse Nachkommen von Init sind.
Tabelle mit allgemeinen umask-Einstellungen
umask | Benutzerzugriff | Gruppenzugriff | Andere |
---|---|---|---|
0000 | alle | alle | alle |
0002 | alle | alle | lesen, ausführen |
0007 | alle | alle | keine |
0022 | alle | lesen, ausführen | lesen, ausführen |
0027 | alle | lesen, ausführen | keine |
0077 | alle | keine | keine |