Was umask macht
Umask legt fest, welche Berechtigungen neue Dateien und Verzeichnisse nicht bekommen, indem bestimmte Rechte von den theoretischen Standardwerten 666 (Dateien) und 777 (Verzeichnisse) abgezogen werden. So bestimmst du zentral, ob neue Objekte eher offen (z. B. für Zusammenarbeit) oder restriktiv (z. B. in produktiven Umgebungen) angelegt werden.
Umask an einfachen Beispielen erklärt
Beispiel 1: umask 022 (häufiger Standard)
- Theoretische Rechte:
- Datei: 666 (rw-rw-rw-)
- Verzeichnis: 777 (rwxrwxrwx)
- Umask: 022
- Ergebnis (neu erstellt):
- Datei: 644 → rw-r–r– (User: lesen+schreiben, Gruppe/Andere: nur lesen)
- Verzeichnis: 755 → rwxr-xr-x (User: alles, Gruppe/Andere: lesen+ausführen)
Das ist ein typischer Default auf vielen Systemen: sinnvoll für gemeinsame Leserechte, aber Schreibrechte nur für den Besitzer.
Beispiel 2: umask 027 (restriktiver)
- Theoretische Rechte: 666 / 777
- Umask: 027
- Ergebnis:
- Datei: 640 → rw-r—– (User: lesen+schreiben, Gruppe: nur lesen, Andere: kein Zugriff)
- Verzeichnis: 750 → rwxr-x— (User: alles, Gruppe: lesen+ausführen, Andere: kein Zugriff)
Gut für Teams, in denen nur Gruppenmitglieder lesen dürfen und alle anderen komplett ausgesperrt werden sollen.
Beispiel 3: umask 077 (sehr strikt)
- Umask: 077
- Ergebnis:
- Datei: 600 → rw——-
- Verzeichnis: 700 → rwx——
Damit bist du maximal restriktiv unterwegs: Nur der Besitzer hat Zugriff, Gruppe und Andere gehen komplett leer aus – ideal für sensible Daten im Home-Verzeichnis oder auf Servern.
Beispiel 4: umask anzeigen
- Befehl:
umask - Ausgabe-Beispiel:
0022→ entspricht 022 - Mit
umask -Skannst du eine symbolische Darstellung sehen, etwau=rwx,g=rx,o=rx.ibm+1
So erkennst du schnell, wie dein System aktuell neue Berechtigungen vergibt.
Umask dauerhaft setzen
Für eine Shell-Sitzung reicht:
umask 027
Nach Logout ist das Setting jedochweg. Dauerhaft machst du es so:
- Systemweit (alle User):
- In Dateien wie
/etc/profile,/etc/bashrcoder teils/etc/login.defseinen Eintragumask 027ergänzen. - Ab dem nächsten Login greifen die neuen Defaults für alle (je nach Distribution/Setup).
- In Dateien wie
- Nur für einen User:
- In
~/.bashrcoder~/.bash_profiledie Zeileumask 027hinzufügen. - Nach erneutem Login oder
source ~/.bashrcnutzt dieser User automatisch die neue Maske.
- In
In komplexeren Umgebungen kann zusätzlich pam_umask in den PAM-Konfigurationen verwendet werden, um je nach Login-Art (z. B. SSH, grafisch) eine einheitliche umask durchzusetzen.
Zusammenfassung
Umask wirkt wie ein Filter auf die Standardrechte 666 (Dateien) & 777 (Verzeichnisse) und bestimmt, wie offen oder geschlossen neue Dateien und Verzeichnisse erstellt werden. Mit Werten wie 022, 027 oder 077 steuerst du den Sicherheitsgrad und machst die Einstellungen über /etc/profile, Shell-RC-Dateien oder PAM dauerhaft, sodass sie auch nach Reboot und neuem Login erhalten bleiben.
Schreibe einen Kommentar