chmod-Konverter: Symbolisch ↔ Oktal
Konvertieren Sie chmod-Modi zwischen oktaler und symbolischer Schreibweise: 755 in u=rwx,g=rx,o=rx und zurück. Wenden Sie außerdem Änderungen wie u+x oder go-w auf einen aktuellen Modus an, verarbeiten Sie setuid, setgid und das Sticky-Bit und lesen Sie ls -l-Zeichenfolgen ein. Läuft in Ihrem Browser.
Eingabe
Der Modus vor der Änderung, der von symbolischen Modi wie u+x verwendet wird. + fügt Berechtigungen hinzu und - entfernt sie.Begrenzt symbolische Änderungen ohne u, g, o oder a, beispielsweise +w.
Ausgabe
Readme
Was sind oktale und symbolische chmod-Modi?
chmod legt die Berechtigungen einer Datei unter Linux, macOS und anderen Unix-Systemen fest und akzeptiert dafür zwei Schreibweisen. Ein Oktalmodus wie 755 enthält jeweils eine Ziffer für den Eigentümer, die Gruppe und alle anderen Benutzer; Lesen entspricht 4, Schreiben 2 und Ausführen 1. Ein symbolischer Modus wie u=rwx,g=rx,o=rx benennt stattdessen die Klassen (u Eigentümer, g Gruppe, o andere, a alle) und die Berechtigungen (r, w, x).
Symbolische Modi können Berechtigungen auch ändern, anstatt sie vollständig festzulegen: u+x fügt dem Eigentümer die Ausführungsberechtigung hinzu, go-w entfernt die Schreibberechtigung für Gruppe und andere, und g=u kopiert die Berechtigungen des Eigentümers auf die Gruppe. Ein Oktalmodus legt immer jede Berechtigung fest. Daher hängt das oktale Ergebnis einer Änderung vom vorherigen Modus der Datei ab.
Beschreibung des Tools
Dieses Tool konvertiert chmod-Modi zwischen oktaler und symbolischer Schreibweise. Wählen Sie die Quell- und Zielschreibweise aus oder lassen Sie die Quelle auf automatische Erkennung eingestellt: Geben Sie 755 ein, um u=rwx,g=rx,o=rx zu erhalten, oder geben Sie einen symbolischen Modus ein, um den oktalen Wert zu erhalten. Bei Änderungen wie u+x oder a+X geben Sie den aktuellen Modus der Datei ein und sehen Sie den Modus, den chmod anschließend setzen würde. Sie können auch eine Berechtigungszeichenkette aus ls -l wie -rwxr-xr-x oder einen vollständigen chmod-Befehl einfügen.
Beispiele
| Oktal | Symbolisch | ls -l | Typische Verwendung |
|---|---|---|---|
| 644 | u=rw,go=r |
-rw-r--r-- |
Normale Dateien |
| 755 | u=rwx,go=rx |
-rwxr-xr-x |
Skripte, Programme und Verzeichnisse |
| 600 | u=rw,go= |
-rw------- |
Private Dateien wie SSH-Schlüssel |
| 2775 | u=rwx,g=rwxs,o=rx |
drwxrwsr-x |
Gemeinsame Verzeichnisse, die ihre Gruppe behalten |
| 1777 | a=rwx,+t |
drwxrwxrwt |
/tmp und andere gemeinsam genutzte temporäre Verzeichnisse |
| 4755 | u=rwxs,go=rx |
-rwsr-xr-x |
Programme wie passwd |
Funktionen
- Konvertiert Oktal- in symbolische Modi und symbolische in oktale Modi; mit einer Schaltfläche zum Tauschen der Richtung
- Erkennt die Schreibweise des eingegebenen Modus oder konvertiert ausgehend von der ausgewählten Schreibweise
- Wendet relative Änderungen wie
u+x,go-w,a=r,u+w,g=uunda+Xauf einen aktuellen Modus an - Unterstützt setuid, setgid und das Sticky-Bit (
s,tund vierstellige Oktalmodi) - Gibt den symbolischen Modus vollständig (
u=rwx,g=rx,o=rx) oder kompakt (u=rwx,go=rx) aus - Liest und schreibt
ls -l-Berechtigungszeichenketten einschließlichs,S,tundT - Akzeptiert eingefügte Befehle wie
sudo chmod -R 755 dir - Zeigt bei einem ungültigen Modus auf das genaue Zeichen
Funktionsweise
Ein Oktalmodus wird als bis zu vier Ziffern gelesen: Die optionale erste Ziffer enthält setuid (4), setgid (2) und das Sticky-Bit (1); die anderen drei enthalten die Berechtigungen für Eigentümer, Gruppe und andere. Ein symbolischer Modus wird Klausel für Klausel gemäß der POSIX-Grammatik gelesen und wie bei GNU chmod unter Linux auf den aktuellen Modus angewendet:
+fügt Berechtigungen hinzu,-entfernt sie und=legt sie fest und löscht die übrigen Berechtigungen für die benannten Klassen.Xfügt die Ausführungsberechtigung nur Verzeichnissen und Dateien hinzu, bei denen bereits mindestens ein Benutzer über diese Berechtigung verfügt.ssetzt setuid mituund setgid mitg.tsetzt das Sticky-Bit mito,aoder ohne Klassenangabe.- Ohne Klassenangabe, wie bei
+x, gilt die Änderung für alle, mit Ausnahme der durch die umask blockierten Bits. - Bei Verzeichnissen bleiben setuid und setgid unverändert, sofern der Modus sie nicht ausdrücklich benennt, wie bei
g-s.
Die symbolische Ausgabe setzt jedes Bit ausdrücklich, sodass sie bei einer Datei unabhängig vom vorherigen Modus immer dasselbe Ergebnis liefert. Das Sticky-Bit wird als separate +t-Klausel geschrieben, da sowohl GNU- als auch BSD-chmod diese Schreibweise akzeptieren.
Tipps
- Verwenden Sie
a+Xmitchmod -R, um Verzeichnisse durchsuchbar zu machen, ohne jede Datei ausführbar zu machen. chmod 755für ein Verzeichnis entfernt setgid mit GNUchmodnicht. Verwenden Siechmod 00755oderg-s, um es zu entfernen.- Ansible und viele Konfigurationsdateien erwarten eine führende Null, wie bei
0755. Aktivieren Sie „Immer 4 Oktalziffern anzeigen“, um diese Ausgabe zu erhalten. - Ein
.oder+nach einerls -l-Zeichenkette kennzeichnet einen SELinux-Kontext oder eine ACL. Verwenden Siegetfacl, um ACL-Einträge anzuzeigen, die im Modus nicht enthalten sind.