Chmod-Rechner
Unix-Berechtigungen zwischen Oktal-, Symbol- und chmod-Notation umrechnen
| Lesen | Schreiben | Ausführen | |
|---|---|---|---|
| Besitzer | |||
| Gruppe | |||
| Andere |
Unix-Dateiberechtigungen entscheiden, wer eine Datei lesen, schreiben und ausführen darf, und werden üblicherweise als drei Oktalziffern wie 755 geschrieben. Dieser Rechner lässt Sie einen Modus interaktiv zusammenstellen oder einen vorgegebenen entschlüsseln. Setzen Sie Häkchen für Lesen, Schreiben und Ausführen bei Besitzer, Gruppe und Anderen, und er erzeugt die Oktalzeichenfolge, die neunstellige symbolische Form, die ls -l ausgibt, sowie die symbolische Notation, die der Befehl chmod akzeptiert. Sie können auch einen Oktalwert eintippen und zusehen, wie sich die Kästchen aktualisieren.
Das 3x3-Raster lesen
Das Raster hat eine Zeile pro Berechtigungsklasse und eine Spalte pro Berechtigungsbit:
| Klasse | Symbol | Lesen (4) | Schreiben (2) | Ausführen (1) |
|---|---|---|---|---|
| Besitzer | u | eigene Dateien | ändern | ausführen / durchlaufen |
| Gruppe | g | Gruppendateien | ändern | ausführen / durchlaufen |
| Andere | o | für alle | ändern | ausführen / durchlaufen |
Jede Ziffer ist die Summe der Bits, die für diese Zeile gesetzt sind. Die dreistellige Oktalzeichenfolge ist einfach Besitzerziffer, dann Gruppenziffer, dann Anderenziffer. In der symbolischen Form steht bei einem gesetzten Bit der jeweilige Buchstabe und bei einem nicht gesetzten ein Bindestrich, sodass die drei Positionen jeder Klasse immer in dieser festen Reihenfolge als rwx erscheinen, mit Bindestrichen für alles Fehlende.
Wenn Sie eine Datei mit ls -l prüfen, erscheint der Modus als zehn Zeichen, zum Beispiel -rwxr-xr-x. Das erste Zeichen ist der Dateityp, mit einem führenden Bindestrich für eine reguläre Datei und einem d für ein Verzeichnis; die verbleibenden neun sind genau die symbolische Zeichenfolge, die dieses Tool erzeugt. Diese Zeichenfolge zu lesen heißt, sie in Dreiergruppen zu teilen, und jede Gruppe bildet direkt auf eine Oktalziffer des erzeugten Modus ab.
Die Oktalziffern
Da Lesen 4, Schreiben 2 und Ausführen 1 ist, bildet jede Kombination von 0 bis 7 auf genau ein Berechtigungstripel ab:
| Ziffer | Berechtigungen | Symbolisch |
|---|---|---|
| 0 | keine | --- |
| 1 | ausführen | —x |
| 2 | schreiben | -w- |
| 3 | schreiben + ausführen | -wx |
| 4 | lesen | r— |
| 5 | lesen + ausführen | r-x |
| 6 | lesen + schreiben | rw- |
| 7 | lesen + schreiben + ausführen | rwx |
Wenn Sie sich ein paar Summen merken, kommen Sie schon weit: 6 ist 4 + 2, 5 ist 4 + 1 und 7 ist alles drei.
Rechenbeispiele
- 644 — Besitzer 6 = Lesen + Schreiben, Gruppe 4 = Lesen, Andere 4 = Lesen. Symbolisch
rw-r--r--, chmod-Notationu=rw,g=r,o=r. Der Standardmodus für Webseiten und Konfigurationsdateien, die nur der Besitzer bearbeitet. - 755 — Besitzer 7, Gruppe 5, Andere 5. Symbolisch
rwxr-xr-x, chmod-Notationu=rwx,g=rx,o=rx. Der übliche Modus für Verzeichnisse, ausführbare Dateien und Skripte. - 600 — Besitzer 6, Gruppe 0, Andere 0. Symbolisch
rw-------, chmod-Notationu=rw,g=,o=. Häufig für private Dateien wie.env, private SSH-Schlüssel und Anmeldedaten-Speicher. - 700 — Besitzer 7, Gruppe 0, Andere 0. Symbolisch
rwx------, chmod-Notationu=rwx,g=,o=. Ein privates Verzeichnis, das nur der Besitzer betreten darf. - 777 — alle Bits gesetzt. Symbolisch
rwxrwxrwx, chmod-Notationu=rwx,g=rwx,o=rwx. Gewährt allen die volle Kontrolle und sollte letztes Mittel sein, keine Voreinstellung.
Einen Oktalwert rückwärts eingeben
Statt Kästchen anzuklicken, können Sie den Oktalwert in das Eingabefeld tippen, was nützlich ist, wenn Sie einen Modus aus einem Handbuch oder einer Serverfehlermeldung entschlüsseln. Die Eingabe ist auf ein bis drei Ziffern beschränkt, jede von 0 bis 7. Kurze Werte werden links mit Nullen aufgefüllt, sodass 7 als 700 und 64 als 064 gelesen wird. Eine Ziffer 8 oder 9, vier oder mehr Ziffern oder ein leerer Wert werden mit einem Hinweis direkt abgelehnt, statt stillschweigend umgedeutet zu werden.
Was dieser Rechner nicht macht
- Keine Spezialbits. setuid (4), setgid (2) und das Sticky-Bit (1) benötigen eine vierte führende Ziffer, wie in 4755 oder 1777. Dieses Tool verarbeitet nur drei Ziffern, daher lassen sich solche Modi nicht eingeben.
- Kein Parsen symbolischer Operatoren. Es zeigt
u=rwx,g=rx,o=rxan, versteht aber nichtchmod u+xodera+r. Die Änderung müssen Sie selbst in einen vollständigen Modus übersetzen. - Keine umask-Berechnung. Es zeigt einen absoluten Modus, nicht das Ergebnis einer umask-Anwendung auf eine Vorgabe.
- Kein Dateisystemzugriff. Auf der Festplatte wird nichts geändert;
chmodführen Sie weiterhin selbst aus. - Keine Unterscheidung zwischen Datei und Verzeichnis. Dieselbe Zahl ist für beide gültig, doch die praktische Bedeutung des Ausführungsbits unterscheidet sich.
Häufige Fehler
- 777 auf Web-Inhalten setzen. Das lässt jeden Prozess oder Besucher Dateien verändern und ist eine häufige Ursache kompromittierter Websites. Bevorzugen Sie 644 für Dateien und 755 für Verzeichnisse.
- 755 für reguläre Dateien verwenden. Das gewährt Ausführungsrechte, die ein Dokument oder Bild nicht braucht, und vergrößert die Angriffsfläche.
- 644 auf einem Verzeichnis verwenden. Ohne das Ausführungsbit lässt sich das Verzeichnis nicht betreten oder durchlaufen.
- Die Reihenfolge der Klassen vergessen. Die Ziffern stehen für Besitzer, Gruppe, Andere — nicht für Andere, Gruppe, Besitzer.
- Eine Datei ändern und den Rest ignorieren. Berechtigungen gelten pro Datei; nach einem Deployment kann ein bewusst angewendetes
chmod -Rauf einen Baum nötig sein. - Annehmen, ein lesbares Verzeichnis sei betretbar. Lesen und Ausführen erfüllen bei einem Verzeichnis unterschiedliche Aufgaben.
Verwandte Tools
- Cron-Expression-Generator — Cron-Zeitpläne erstellen und verstehen.
- Zahlenbasis-Konverter — Zwischen Binär-, Oktal-, Dezimal- und Hexadezimalzahlen umrechnen.
- Zeitstempel-Konverter — Zwischen Unix-Zeitstempeln und Datumsangaben umrechnen.
Häufig gestellte Fragen
Warum lehnt das Oktalfeld den Wert 4755 ab?
Dieser Rechner akzeptiert ein bis drei Oktalziffern, jede von 0 bis 7, und bildet damit nur die drei Standardklassen (Besitzer, Gruppe, Andere) ab. Eine führende 4 ist das setuid-Bit, das in einer vierten Ziffernposition liegt, die dieses Tool nicht darstellt; deshalb gilt 4755 als ungültige Eingabe. Dasselbe gilt für setgid (2) und das Sticky-Bit (1).
Welchen Modus sollte ein Web-Verzeichnis im Vergleich zu einer Datei haben?
Verzeichnisse benötigen im Allgemeinen das Ausführungsbit, damit sie betreten und durchlaufen werden können; deshalb ist 755 die übliche Wahl für Ordner und Skripte. Gewöhnliche Webdateien müssen nur gelesen werden, daher ist 644 Standard. Eine reguläre Datei auf 755 zu setzen gewährt Ausführungsrechte, die sie nicht braucht, und ein Verzeichnis auf 644 zu setzen kann es unmöglich machen, es zu öffnen.
Worin unterscheiden sich 644 und 664?
Beide geben dem Besitzer Lesen und Schreiben und allen anderen das Lesen. Der einzige Unterschied liegt in der mittleren Ziffer: 664 gewährt auch der Gruppe das Schreiben, 644 nicht. Verwenden Sie 644 für Dateien, die einer einzelnen Person gehören, und 664 nur, wenn eine vertrauenswürdige Gruppe die Datei wirklich bearbeiten muss, etwa in einem gemeinsamen Upload-Verzeichnis.
Warum brauche ich bei einem Verzeichnis das x-Bit?
Bei einem Verzeichnis steuert das Lesen, ob Sie dessen Inhalt auflisten können, während das Ausführen steuert, ob Sie es betreten oder Dateien darin nach Namen ansprechen können. Ohne x schlagen Befehle wie cd in das Verzeichnis oder das Öffnen eines bekannten Dateipfads fehl, selbst wenn das Verzeichnis lesbar ist. Deshalb sind Verzeichnisse üblicherweise 755 oder 700, niemals 644.
Welche Ziffer gehört zu Besitzer, Gruppe und Anderen?
Sie werden von links nach rechts gelesen: Die erste Ziffer ist der Besitzer (Klasse u in symbolischer Notation), die zweite die Gruppe (g) und die dritte alle Übrigen (o). In 755 hat der Besitzer also rwx, die Gruppe r-x und die Anderen r-x.
Setzt der Rechner die Berechtigungen auf meinen Dateien?
Nein. Er berechnet und zeigt nur die Oktal- und die symbolischen Werte. Den Befehl chmod müssen Sie weiterhin auf Ihrer eigenen Maschine oder Ihrem Server ausführen, und Sie sollten verstehen, was ein Modus gewährt, bevor Sie ihn anwenden — besonders rekursiv.
Geprüft vom HandyTools-Hub-Team · Zuletzt aktualisiert