Linux-Umask-Rechner
Berechnen Sie Linux-Umask-Werte und zeigen Sie eine Vorschau der resultierenden Standardberechtigungen für neue Dateien und Verzeichnisse an. Unterstützt oktale Eingabe, Voreinstellungen und symbolische Ausgabe.
Eingabe
Ausgabe
Readme
Was ist umask?
umask (user file-creation mode mask) ist eine Linux- und Unix-Einstellung, die die Standardberechtigungen für neu erstellte Dateien und Verzeichnisse steuert. Anstatt Berechtigungen direkt festzulegen, definiert umask, welche Berechtigungsbits bei der Erstellung einer neuen Datei oder eines neuen Verzeichnisses von den Systemstandards entfernt werden sollen.
Das System beginnt mit einer Basisberechtigung von 666 (Lese- und Schreibzugriff für alle) für Dateien und 777 (Lese-, Schreib- und Ausführungszugriff für alle) für Verzeichnisse. Die umask wird dann bitweise von diesen Standardwerten subtrahiert, indem eine logische AND-NOT-Operation verwendet wird, was die endgültigen Berechtigungen ergibt. Beispielsweise führt eine umask von 022 zu Berechtigungen von 644 für neue Dateien und 755 für neue Verzeichnisse.
Jede umask-Ziffer entspricht einer Berechtigungsklasse: die erste Ziffer betrifft den Besitzer, die zweite die Gruppe und die dritte andere. Eine Ziffer von 0 bedeutet, dass keine Berechtigungen maskiert werden, während 7 alle Berechtigungen für diese Klasse entfernt.
Werkzeugbeschreibung
Der Linux umask-Rechner konvertiert einen umask-Wert und eine Basisberechtigung in die resultierenden effektiven Berechtigungen in oktaler und symbolischer Notation. Er generiert auch den exakten umask-Shell-Befehl und hilft Systemadministratoren, Entwicklern und DevOps-Ingenieuren, die Auswirkungen einer umask in der Vorschau anzuzeigen, bevor sie auf eine Shell, ein Skript oder eine Systemkonfiguration angewendet wird.
Beispiele
| Umask | Basis | Resultierende Oktalzahl | Symbolisch |
|---|---|---|---|
| 022 | 666 | 644 | rw-r--r-- |
| 022 | 777 | 755 | rwxr-xr-x |
| 077 | 666 | 600 | rw------- |
| 027 | 777 | 750 | rwxr-x--- |
| 002 | 666 | 664 | rw-rw-r-- |
Funktionen
- Berechnet resultierende oktal- und symbolische Berechtigungen aus einer beliebigen umask
- Unterstützt sowohl 3-stellige als auch 4-stellige umask-Werte (mit führendem Sticky/Setuid-Bit)
- Häufige umask-Voreinstellungen (022, 027, 077, 002, 007, 000)
- Basisberechtigung-Voreinstellungen für Dateien (666) und Verzeichnisse (777)
- Generiert den einsatzbereiten
umask-Shell-Befehl
Anwendungsfälle
- Server-Härtung: Zeigen Sie eine strengere umask wie
077in der Vorschau an, bevor Sie sie zu/etc/profileoder der Shell-Konfiguration eines Benutzers hinzufügen, um sicherzustellen, dass neue Dateien privat sind. - Gemeinsame Entwicklungsumgebungen: Überprüfen Sie, dass
002oder007gruppenschreibbare Dateien für kollaborative Projektverzeichnisse erzeugt. - Bereitstellungsskripte: Bestätigen Sie, dass die in CI/CD-Pipelines oder Container-Einstiegspunkten verwendete umask die erwarteten Dateiberechtigungen für Anwendungsprotokolle und hochgeladene Assets erzeugt.
Funktionsweise
Die endgültige Berechtigung wird für jede Klasse (Besitzer, Gruppe, andere) mit der folgenden Formel berechnet:
final = base AND (NOT umask)Jede Oktalziffer wird unabhängig verarbeitet. Für eine umask-Ziffer von 2 (binär 010) und eine Basisziffer von 6 (binär 110) ist das Ergebnis 110 AND NOT 010 = 100, was 4 (nur Lesezugriff) entspricht. Die führende Ziffer einer 4-stelligen umask steuert spezielle Bits (setuid, setgid, sticky) und wird in der standardmäßigen Berechtigungsberechnung ignoriert.
Tipps
- Verwenden Sie
666als Basis, um Berechtigungen für neue Dateien anzuzeigen, und777für neue Verzeichnisse. - Eine umask von
000bedeutet, dass keine Berechtigungen entfernt werden — nützlich nur in streng kontrollierten, isolierten Umgebungen. - Um die umask dauerhaft zu machen, fügen Sie den generierten Befehl zu
~/.bashrc,~/.profileoder/etc/profilehinzu, je nachdem, welchen Umfang Sie wünschen.