Passer au contenu principal

Utilisation de la commande chmod sous Linux

Sous Linux, chaque fichier ou dossier possède des permissions qui déterminent qui est autorisé à lire, modifier ou exécuter une ressource.

Elles concernent toujours trois catégories d’utilisateurs :

  • Utilisateur (owner) : la personne propriétaire du fichier.

  • Groupe (group) : les membres du groupe associé au fichier.

  • Autres (others) : tous les autres utilisateurs du système.

Ces catégories se combinent avec trois types de droits, qui définissent précisément les actions possibles :

  • r (read = 4) : autorise la lecture du contenu.

  • w (write = 2) : autorise la modification ou la suppression.

  • x (execute = 1) : pour un fichier → l’exécuter comme programme ; pour un dossier → y accéder et le parcourir.

Chaque permission possède une valeur numérique (r=4, w=2, x=1). En additionnant ces valeurs, on obtient une notation simplifiée qui facilite la configuration des droits.

Pour modifier concrètement ces permissions, la commande chmod propose deux approches principales :

1. Notation numérique :

On attribue une valeur à chaque catégorie d’utilisateurs :

  • chmod 644 fichier.txt → l’owner peut lire/écrire, groupe et autres peuvent seulement lire (classique pour des fichiers texte).

  • chmod 600 fichier.txt → seul l’owner a accès (courant pour les clés SSH).

  • chmod 755 script.sh → l’owner peut tout faire, groupe et autres peuvent lire et exécuter (classique pour des scripts ou programmes).

2. Notation symbolique :

Plutôt que des chiffres, on indique directement les droits à ajouter ou retirer :

  • chmod u+x script.sh → ajoute l’exécution pour l’owner.

  • chmod g-w fichier.txt → retire l’écriture pour le groupe.

Bonnes pratiques avec chmod

  • Éviter chmod 777 sauf pour des tests ponctuels.

  • Appliquer le principe du moindre privilège : donner uniquement les droits nécessaires.

  • Vérifier les permissions avec : ls -l.