chmod-Rechner
Rechne Unix-Dateirechte zwischen oktal (755), Buchstaben (rwxr-xr-x), ls -l und chmod-Klauseln um, mit Kontrollkästchen-Raster sowie setuid-, setgid- und Sticky-Bit.
Codebeispiele
Kopieren Sie diese Beispiele in Ihr eigenes Projekt. Sie verwenden nur die Standardbibliothek der Sprache, es muss also nichts installiert werden.
const mode = parseInt('755', 8)
const letters = [...'rwxrwxrwx'].map((letter, i) => (mode & (0o400 >> i) ? letter : '-'))
console.log(letters.join(''))Was es tut
Rechnet Unix-Dateirechte zwischen oktal (755), Rechtebuchstaben (rwxr-xr-x), einer ls -l-Zeile und chmod-Klauseln (u=rwx,g=rx,o=rx) um. Hake das Raster an, und jede Schreibweise folgt, einschließlich setuid-, setgid- und Sticky-Bit.
So benutzt du es
- Gib einen Modus in einer beliebigen Schreibweise ein oder hake die Kästchen an.
- Lies ihn in jeder Schreibweise und ändere eine davon.
- Kopiere den umgerechneten Wert oder wähle einen Dateityp, um die
ls -l-Zeile für ein Verzeichnis oder einen Link zu sehen.
Beispiele
755 ist rwxr-xr-x: Der Besitzer darf lesen, schreiben und ausführen, alle anderen dürfen lesen und ausführen. 644 ist rw-r--r--, der übliche Modus für eine Datei, und 1777 ist rwxrwxrwt, ein gemeinsames Verzeichnis wie /tmp.
Gut zu wissen
- Ziffern addieren Lesen 4, Schreiben 2 und Ausführen 1 für den Besitzer, die Gruppe und alle anderen. Eine vierte Ziffer davor ergänzt setuid 4, setgid 2 und Sticky 1.
- In Buchstaben stehen die speziellen Bits an der Stelle für Ausführen:
sfür setuid und setgid,tfür Sticky. Ein großesSoderTbedeutet, dass das spezielle Bit ohne das Ausführungsbit gesetzt ist. - Klauseln wie
u=rwx,g=rx,o=rxlegen jede Klasse fest, und eine Klasse, die keine Klausel nennt, hat keine Rechte. Relative Formen wieu+xwerden hier nicht gelesen, weil sie vom aktuellen Modus einer Datei abhängen.
Was bedeuten die Zahlen bei chmod?
Jede Ziffer addiert Lesen (4), Schreiben (2) und Ausführen (1) für eine Klasse: Die erste Ziffer gilt für den Besitzer, die zweite für die Gruppe und die dritte für alle anderen. 755 heißt also: Der Besitzer darf lesen, schreiben und ausführen, die anderen dürfen lesen und ausführen. Eine vierte Ziffer davor ergänzt setuid (4), setgid (2) und Sticky (1).
Häufige Fragen
Was sind setuid, setgid und das Sticky-Bit?
Mit setuid und setgid läuft ein Programm mit den Rechten seines Besitzers oder seiner Gruppe statt mit denen dessen, der es startet. Bei einem Verzeichnis sorgt setgid dafür, dass neue Dateien die Gruppe erben, und mit dem Sticky-Bit (wie bei /tmp) darf nur der Besitzer einer Datei sie löschen. In Buchstaben sind es ein s oder t an der Stelle für Ausführen; ein großes S oder T bedeutet, dass das Ausführungsbit nicht gesetzt ist.
Warum ist 777 keine gute Idee?
Dann kann jeder Benutzer des Systems die Datei ändern oder ersetzen. Gib dem Besitzer, was er braucht, und der Gruppe oder anderen nur den Zugriff, den sie wirklich brauchen: Für Skripte ist das meist 755, für private Dateien 600.
Sendet dieses Tool meine Eingabe irgendwohin?
Nein. Alles passiert in deinem Browser. Was du eingibst, wird nie an unsere Server gesendet.