Linux & Shell

Umask-Rechner

Maske und angeforderte Erstellungsmodi eingeben. Datei- und Verzeichnisrechte mit den einzelnen Bit-Schritten vergleichen.

Umask-Rechner

Maske und angeforderte Modi

Berechnete Rechte

Maske — zu löschende Bits
0022 · ----w--w-
Erlaubte Rechte (umask -S)
u=rwx,g=rx,o=rx

Datei

0644 · rw-r--r--

Tatsächlich entfernt: 0022 · ----w--w-

Bit-Berechnung anzeigen
Angeforderte Bits
0666 · 110 110 110
Maske — zu löschende Bits
0022 · 000 010 010
Erlaubte Bits (~mask & 0777)
0755 · 111 101 101
Ergebnisbits
0644 · 110 100 100

Ein Bit bleibt nur erhalten, wenn es angefordert und nicht maskiert ist.

0666 & (~0022 & 0777) = 0644

Verzeichnis

0755 · rwxr-xr-x

Tatsächlich entfernt: 0022 · ----w--w-

Bit-Berechnung anzeigen
Angeforderte Bits
0777 · 111 111 111
Maske — zu löschende Bits
0022 · 000 010 010
Erlaubte Bits (~mask & 0777)
0755 · 111 101 101
Ergebnisbits
0755 · 111 101 101

Ein Bit bleibt nur erhalten, wenn es angefordert und nicht maskiert ist.

0777 & (~0022 & 0777) = 0755

Berechnung im Browser; Eingaben werden weder übertragen noch gespeichert.

Beispiele und Eingabeformat

Symbolische Masken nennen erlaubte Bits: u=rwx,g=rx,o=rx entspricht 022. Alle drei Klassen sind erforderlich.

Nur die angegebenen Anforderungen werden berechnet. Standard-ACLs und spätere Änderungen bleiben außen vor.

Rechte berechnet.

Der Umask-Rechner erklärt, warum eine neue Datei andere Rechte erhält als ein neues Verzeichnis desselben Prozesses. Entscheidend ist neben der Maske auch der Modus, den das Programm beim Erstellen anfordert.

0666 und 0777 sind übliche Ausgangswerte. Tragen Sie bei Bedarf die tatsächliche Anforderung ein: Die Maske entfernt vorhandene Bits und kann keine zusätzlichen Rechte vergeben.

Warum dieser Umask-Rechner

Eine Maske, zwei Ausgangswerte

Der Umask-Rechner zeigt beim Beispiel 111 einen wichtigen Unterschied: Eine Dateianforderung von 666 bleibt 666, eine Verzeichnisanforderung von 777 wird zu 666. Die bereits fehlenden Ausführungsbits erklären, warum bloßes Subtrahieren nicht funktioniert.

Ein Dokument und ein Ordner durchlaufen denselben Filter und behalten unterschiedliche Berechtigungsfelder.

Erlaubt heißt nicht angefordert

Der Umask-Rechner trennt erlaubte von angeforderten Bits. Fordert ein Programm beim Erstellen einer Datei 777 an, können Ausführungsbits bleiben. Bei 666 fehlen sie bereits vor Anwendung der Maske.

Zwei Berechtigungsebenen überlagern sich; nur gemeinsam belegte Felder bleiben erhalten.

Anforderung und Schreibweise prüfen

01

Das Beispiel 111 ausprobieren

Wählen Sie 111 aus und laden Sie die Vorschau. Sie zeigt die Anzahl geänderter Felder; erst Anwenden ersetzt die Eingaben. Rückgängig stellt sowohl Eingaben als auch das vorige Ergebnis wieder her.

02

Symbolische Rechte richtig zuordnen

In das Maskenfeld gehört eine vollständige Ausgabe wie u=rwx,g=rx,o=rx von umask -S. Für angeforderte Modi verwenden Sie neun Zeichen wie rw-rw-rw-. Die erste Form beschreibt erlaubte, die zweite angeforderte Rechte.

03

Mehrere Änderungen gesammelt prüfen

Schalten Sie die automatische Berechnung aus. Änderungen sperren sofort den Export. Berechnen oder Strg/Cmd+Enter aktualisiert das Ergebnis; in den aufgeklappten Bit-Schritten lassen sich alle Operanden prüfen.

Welche Bits erhalten bleiben

Dateirechte berechnen mit eigener Basis

Die Vorgaben sind 0666 für Dateien und 0777 für Verzeichnisse. Beide Anforderungen sind unabhängig editierbar. Ein Programm für ausführbare Dateien kann 0777 anfordern, eines für private Daten nur 0600.

Oktalmodus und symbolische Rechte

Die numerische Maske bezeichnet zu löschende Bits; vollständige u=,g=,o=-Angaben bezeichnen erlaubte Rechte. Das Ergebnis erscheint als vierstelliger Oktalmodus und als rwx-Folge für Eigentümer, Gruppe und andere.

Tatsächlich entfernte Rechte sehen

Anforderung, Maske, auf neun Bits begrenztes Komplement und Ergebnis werden einzeln gezeigt. Die entfernten Bits stehen gesondert dabei. Ein Maskenbit, das schon in der Anforderung fehlt, erzeugt keine zusätzliche Änderung.

Grenzen der Berechnung

Nur neun normale Berechtigungsbits
Zulässig sind drei Oktalziffern oder vier mit führender Null; Anforderungen dürfen auch neun rwx-Zeichen enthalten. Sonderbits, Dateityppräfixe und ACL-Suffixe werden abgewiesen. Äußerer Leerraum wird entfernt; je Feld sind höchstens 128 Zeichen erlaubt.
Vollständige symbolische Zuweisung
u, g und o müssen je einmal vorkommen. Die Klauselreihenfolge ist frei, Rechte stehen in rwx-Reihenfolge oder bleiben leer. Relative Formen wie g+w, die Kurzform a= und Rechtekopien wie g=u werden nicht ausgewertet.
Keine Nachbildung von ACLs
Eine geerbte Standard-ACL kann unter Linux den üblichen Umask-Pfad ersetzen. Sonderbitvererbung, spätere chmod-Aufrufe, Einhängeoptionen und Eingriffe des erstellenden Programms werden nicht simuliert.
Keine Rückrechnung oder Systemänderung
026 und 027 ergeben bei einer Anforderung von 0666 beide 0640. Ein eindeutiger Rückschluss auf die Maske ist daher nicht möglich. Die Seite ändert keine Dateien, führt keine Befehle aus und speichert weder Shell-Konfiguration noch Eingaben.

Fragen zum Umask-Rechner

Warum wirken sich manche umask-Werte nicht aus?

Nur angeforderte Bits können entfernt werden. 026 und 027 liefern für 0666 beide 0640, weil sich die Masken lediglich bei einem schon fehlenden Ausführungsbit unterscheiden. Berechnet wird ein bitweises UND mit der invertierten Maske, keine Subtraktion.

Warum erhalten neue Dateien durch umask keine Ausführungsrechte?

Übliche Dateiersteller fordern 0666 ohne Ausführungsbits an. Die Maske fügt nichts hinzu. Ein Programm, das eine ausführbare Datei erzeugt, darf aber 0777 anfordern; dann können die entsprechenden Bits erhalten bleiben.

Warum zeigt umask vier Ziffern wie 0022 an?

0022 und 022 sind hier gleichwertig. Die führende Null steht nicht für eine weitere Benutzerklasse. Bei vierstelligen Eingaben muss die erste Ziffer null sein; 1022 wird ausdrücklich abgewiesen.

Wie ist die Ausgabe von umask -S zu verstehen?

Die Ausgabe beschreibt erlaubte Rechte. u=rwx,g=rx,o=rx entspricht 0755 als erlaubtem Modus und 0022 als Maske. Eine Dateianforderung von 0666 erhält dadurch noch keine Ausführungsrechte.

Wie beeinflusst umask Standard-ACLs?

Linux erbt die Standard-ACL des Elternverzeichnisses und begrenzt sie zusätzlich durch den angeforderten Modus. Dabei wird die gewöhnliche Umask-Berechnung ersetzt. Ohne ACL-Eingabe kann dieses Werkzeug diesen Fall nicht berechnen.

Unerwartetes Ergebnis?

Eine andere Anforderung vergleichen

Der Umask-Rechner stellt Anforderung und Maskenwirkung nebeneinander. Für die Erklärung einer echten Datei sollten Sie zusätzlich den erzeugenden Prozess und die ACL des Elternverzeichnisses prüfen.