đŸ› ïžToolsShed

Chmod-Rechner

Berechnen Sie Unix-Dateiberechtigungen. Konvertieren Sie zwischen Oktal- und symbolischer rwx-Notation.

Lesen (r)Schreiben (w)AusfĂŒhren (x)OktalSymbolisch
EigentĂŒmer6rw-
Gruppe4r--
Andere4r--

Oktal

644

Symbolisch

rw-r--r--

chmod-Befehl

chmod 644 filename

Der Chmod-Rechner hilft Ihnen, Unix/Linux-Dateiberechtigungseinstellungen zu verstehen und zu generieren. In Unix-basierten Systemen hat jede Datei und jedes Verzeichnis eine Reihe von Berechtigungsbits, die steuern, wer sie lesen, schreiben oder ausfĂŒhren kann — fĂŒr den EigentĂŒmer, die Gruppe und alle anderen. Der `chmod`-Befehl setzt diese Berechtigungen entweder mit symbolischer Notation (rwx) oder Oktalzahlen (z. B. 755).

Aktivieren Sie die KontrollkĂ€stchen fĂŒr Lesen, Schreiben und AusfĂŒhren fĂŒr die Spalten EigentĂŒmer, Gruppe und Andere, und das Tool berechnet automatisch den Ă€quivalenten Oktalwert und die symbolische Zeichenkette. Umgekehrt geben Sie einen Oktalwert wie 644 ein und das Tool zeigt, welche Berechtigungen fĂŒr jede Benutzerklasse aktiviert sind.

HĂ€ufige Berechtigungsmuster sind 755 (Verzeichnisse und ausfĂŒhrbare Dateien), 644 (Webdateien) und 600 (private SSH-SchlĂŒssel).

HĂ€ufig gestellte Fragen

Code-Implementierung

import os
import stat

# Set permissions using octal notation
os.chmod('script.sh', 0o755)   # rwxr-xr-x (owner: rwx, group: r-x, others: r-x)
os.chmod('data.txt', 0o644)    # rw-r--r-- (owner: rw-, group: r--, others: r--)
os.chmod('private.key', 0o600) # rw------- (owner: rw-, no access for others)

# Read current permissions
file_stat = os.stat('script.sh')
mode = file_stat.st_mode
print(oct(stat.S_IMODE(mode)))  # e.g. '0o755'

# Check specific permissions using stat constants
is_owner_executable = bool(mode & stat.S_IXUSR)
is_group_readable   = bool(mode & stat.S_IRGRP)
is_others_writable  = bool(mode & stat.S_IWOTH)
print(f"Owner executable: {is_owner_executable}")

# Build permissions programmatically
perms = stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IROTH  # 644
os.chmod('config.ini', perms)

# Recursively set permissions on a directory tree
import pathlib
for path in pathlib.Path('/var/www/html').rglob('*'):
    if path.is_dir():
        os.chmod(path, 0o755)
    else:
        os.chmod(path, 0o644)

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.