Aller au contenu
Favoris

Calculateur chmod – Permissions de fichiers sous Linux

Mis à jour :

Convertissez les permissions de fichiers Linux entre une grille de cases à cocher, un code octal (par ex. 755) et la notation symbolique (par ex. rwxr-xr-x). Obtenez des commandes chmod prêtes à l'emploi, un aperçu ls -l et des remarques de sécurité pour les fichiers ordinaires et les répertoires.

Conversion des permissions Linux entre cases à cocher, code octal et notation symbolique

Champs de saisie
Propriétaire (u)
Groupe (g)
Autres (o — tous les autres)
Bits spéciaux
Si activé, le résultat se met à jour automatiquement dès que vous modifiez une valeur.

Formule du chmod

Formule
\[ d = 4 \cdot r + 2 \cdot w + 1 \cdot x \] \[ \text{mode} = (4 \cdot s_{\text{uid}} + 2 \cdot s_{\text{gid}} + 1 \cdot s_{\text{sticky}})\,(d_{\text{propriétaire}})(d_{\text{groupe}})(d_{\text{autres}}) \]

Où :

  • \(r\), \(w\), \(x\) — les bits de lecture, d'écriture et d'exécution, chacun valant 1 si le droit est accordé et 0 sinon ;
  • \(d\) — le chiffre octal d'une classe (propriétaire, groupe ou autres), construit à partir des poids 4–2–1 ;
  • \(s_{\text{uid}}\), \(s_{\text{gid}}\), \(s_{\text{sticky}}\) — les bits spéciaux setuid, setgid et sticky (égaux eux aussi à 0 ou 1).

    Chaque classe de droits correspond à un chiffre octal, car la lecture vaut 4, l'écriture 2 et l'exécution 1 : en additionnant les valeurs accordées, on obtient un nombre de 0 à 7. Le chiffre de tête facultatif encode les bits spéciaux avec les mêmes poids 4–2–1 ; ainsi, 4755 signifie setuid en plus du classique 755.

Chmod – Exemple de calcul

Exemple : un script que le propriétaire peut modifier et exécuter librement, mais que le groupe et tous les autres ne peuvent que lire et exécuter — la configuration classique 755 (c'est aussi la grille par défaut du calculateur : propriétaire r+w+x, groupe r+x, autres r+x).

\[ d_{\text{propriétaire}} = 4 + 2 + 1 = 7 \]
\[ d_{\text{groupe}} = 4 + 0 + 1 = 5 \]
\[ d_{\text{autres}} = 4 + 0 + 1 = 5 \]
\[ \text{mode} = 755 \]

Résultat : mode octal 755, mode symbolique rwxr-xr-x, commande chmod 755 fichier. Dans un listing ls -l, le fichier apparaît sous la forme -rwxr-xr-x.

Comment utiliser le calculateur

  1. Ouvrez le menu déroulant Méthode de saisie et choisissez la manière dont vous voulez décrire les droits : Cases à cocher (grille de droits), Code octal, Notation symbolique ou Préréglages courants. Seuls les champs propres à la méthode choisie restent visibles.
  2. Avec Cases à cocher, cochez Lecture, Écriture et Exécution pour chaque classe — Propriétaire (u), Groupe (g) et Autres (o) — ainsi que, si besoin, les bits spéciaux Setuid, Setgid et Sticky.
  3. Avec Code octal, saisissez trois chiffres (par ex. 755), ou quatre si vous ajoutez le chiffre spécial de tête (par ex. 4755). Avec Notation symbolique, saisissez neuf caractères comme rwxr-xr-x, ou collez une chaîne ls -l complète telle que -rwxr-xr-x — le caractère de type en tête est retiré automatiquement. Avec Préréglages courants, choisissez simplement un jeu de droits prêt à l'emploi.
  4. Réglez Type de fichier sur Fichier ordinaire (-) ou Répertoire (d) afin que l'explication et l'aperçu ls -l emploient le bon vocabulaire.
  5. Consultez les résultats : le mode numérique (octal), le mode symbolique, des commandes chmod prêtes à copier, un aperçu au format ls -l, une explication en langage clair et des remarques de sécurité.

    Ce que sont les permissions de fichiers Linux et comment les lire

    Sur un système Linux, chaque fichier et chaque répertoire porte neuf bits de droits, répartis en trois classes : le propriétaire (u), qui a créé le fichier, le groupe (g) auquel le fichier appartient, et les autres (o) — tous les autres comptes de la machine. Dans chaque classe, trois bits indiquent si cette classe peut lire (r), écrire (w) et exécuter (x) le fichier. La commande chmod modifie ces bits, et le calculateur convertit n'importe laquelle de leurs représentations en toutes les autres.

    La notation octale condense chaque classe en un seul chiffre grâce aux poids 4–2–1, d'où les modes comme 644 ou 755. La notation symbolique énumère les mêmes bits sous forme de neuf caractères lus de gauche à droite : triplet du propriétaire, triplet du groupe, triplet des autres. Un tiret signale l'absence du droit ; ainsi, rw-r--r-- correspond au 644, lisible mais non exécutable. Les deux formes décrivent exactement les mêmes bits : choisissez celle qu'accepte l'outil devant lequel vous travaillez.

    Le sens des bits dépend du type de fichier. Pour un fichier ordinaire, r signifie consulter son contenu, w le modifier et x l'exécuter comme un programme. Pour un répertoire, r signifie lister les noms qu'il contient, w créer, renommer ou supprimer des entrées à l'intérieur, et x y entrer avec cd et ouvrir les fichiers qu'il abrite. C'est pourquoi un répertoire doit posséder le bit x pour que son contenu soit utilisable, et pourquoi 700 est le mode standard des dossiers privés comme ~/.ssh.

    Trois bits spéciaux complètent le tableau. Setuid (4) fait en sorte qu'un exécutable tourne avec les privilèges de son propriétaire — le mécanisme derrière /usr/bin/passwd. Setgid (2) fait de même pour le groupe et, sur un répertoire, les nouveaux fichiers héritent du groupe du répertoire. Sticky (1) restreint la suppression dans un répertoire partagé en écriture : chaque utilisateur ne peut supprimer que ses propres fichiers — la règle qui maintient /tmp (1777) hors de danger. Dans la sortie symbolique, ces bits apparaissent sous la forme s/S à la place d'un bit d'exécution, ou t/T sur le dernier emplacement ; la forme en majuscule indique que le bit d'exécution sous-jacent est désactivé.

    Modes de permissions courants

    Mode

    Symbolique

    Usage typique

    600

    rw-------

    Fichiers privés comme les clés SSH

    644

    rw-r--r--

    Fichiers ordinaires, contenu web

    700

    rwx------

    Répertoires privés comme ~/.ssh

    755

    rwxr-xr-x

    Programmes, scripts, fichiers servis par le web

    775

    rwxrwxr-x

    Répertoires partagés pour un groupe de confiance

    1777

    rwxrwxrwt

    Espace de travail partagé comme /tmp

    4755

    rwsr-xr-x

    Exécutables setuid root (à utiliser avec parcimonie)

    Hypothèses, limites et conseils pratiques