đŸ› ïžToolsShed

Calculateur Chmod

Calculez les permissions de fichiers Unix. Convertissez entre notation octale et symbolique rwx.

Lecture (r)Écriture (w)ExĂ©cution (x)OctalSymbolique
Propriétaire6rw-
Groupe4r--
Autres4r--

Octal

644

Symbolique

rw-r--r--

Commande chmod

chmod 644 filename

La calculatrice Chmod vous aide Ă  comprendre et Ă  gĂ©nĂ©rer des paramĂštres de permissions de fichiers Unix/Linux. Dans les systĂšmes basĂ©s sur Unix, chaque fichier et rĂ©pertoire possĂšde un ensemble de bits de permission qui contrĂŽlent qui peut le lire, l'Ă©crire ou l'exĂ©cuter — pour le propriĂ©taire, le groupe et tous les autres. La commande `chmod` dĂ©finit ces permissions en utilisant la notation symbolique (rwx) ou des nombres octaux (par exemple, 755).

Cochez les cases de lecture, écriture et exécution pour les colonnes Propriétaire, Groupe et Autres, et l'outil calcule automatiquement la valeur octale équivalente et la chaßne symbolique. Inversement, entrez une valeur octale comme 644 et l'outil montre quelles permissions sont activées pour chaque classe d'utilisateur.

Les modÚles de permissions courants incluent 755 (répertoires et exécutables), 644 (fichiers web) et 600 (clés SSH privées).

Questions Fréquentes

Implémentation du Code

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.