Linux

Comment modifier les droits d’un fichier Linux avec chmod (exemples pratiques)

Par Philippe Banquet , le 22 juin 2026 à 09:00 - 4 minutes de lecture
Comment modifier les droits d’un fichier Linux avec chmod (exemples pratiques) — tutoriel Linux Celtic Informatique

Sur Linux, chaque fichier et dossier possède des droits d’accès qui déterminent qui peut le lire, l’écrire ou l’exécuter. La commande chmod (change mode) est l’outil essentiel pour modifier ces permissions. Ce tutoriel vous explique son fonctionnement avec des exemples concrets, en insistant sur les bonnes pratiques et les pièges à éviter.

Comprendre les permissions Linux

Les permissions sont divisées en trois groupes : le propriétaire (user), le groupe (group) et les autres (others). Chaque groupe peut avoir trois droits :

  • r (read) : lire le contenu du fichier.
  • w (write) : modifier le fichier.
  • x (execute) : exécuter le fichier (pour un script ou un programme).

Ces droits sont représentés de deux manières : en mode symbolique (lettres) ou numérique (chiffres). Nous allons voir les deux.

Utiliser chmod en mode numérique

Le mode numérique utilise une valeur sur 3 chiffres (ou 4 si vous incluez les attributs spéciaux). Chaque chiffre est la somme des droits : r=4, w=2, x=1. Par exemple, 7 = rwx (4+2+1), 6 = rw-, 5 = r-x, etc.

La syntaxe de base :

chmod 755 mon_fichier

Dans cet exemple, le propriétaire a tous les droits (7), le groupe et les autres ont lecture et exécution (5). C’est un réglage courant pour un script exécutable.

Autres exemples :

  • chmod 644 fichier.txt : propriétaire peut lire/écrire, les autres seulement lire.
  • chmod 700 script.sh : seul le propriétaire peut lire, écrire, exécuter.
  • chmod 777 dossier : tout le monde a tous les droits (à éviter, voir plus bas).

Utiliser chmod en mode symbolique

Le mode symbolique utilise des lettres pour désigner les groupes : u (user), g (group), o (others), a (all). On ajoute (+) ou enlève (-) des droits, ou on affecte (=).

Exemples :

chmod u+x script.sh   # ajoute l'exécution pour le propriétaire
chmod go-w fichier     # enlève l'écriture pour le groupe et les autres
chmod a=r dossier      # tout le monde peut seulement lire

Le mode symbolique est plus intuitif pour des modifications ponctuelles.

Appliquer les droits récursivement

Pour modifier les permissions d’un dossier et de tout son contenu, utilisez l’option -R :

chmod -R 755 mon_dossier

Prudence : cette commande peut avoir des effets indésirables si elle est mal utilisée, notamment sur les fichiers système. Assurez-vous de cibler le bon dossier.

Pièges à éviter : le fameux 777

Beaucoup d’utilisateurs débutants appliquent chmod 777 pour résoudre un problème de permissions. C’est une très mauvaise pratique car cela donne à n’importe qui (même aux utilisateurs malveillants) le droit d’écrire et d’exécuter vos fichiers. Préférez des droits plus restrictifs.

Si vous avez besoin de partager un fichier en écriture avec un groupe, créez un groupe dédié et utilisez chmod 775 ou chmod 770 selon les besoins.

Précautions importantes

  • Droits administrateur : pour modifier les permissions de fichiers système, utilisez sudo : sudo chmod 755 /etc/fichier.
  • Sauvegarde : avant de modifier les droits en masse, faites une sauvegarde ou notez les permissions d’origine avec ls -l.
  • Ne changez pas les droits sur les répertoires système : cela peut rendre votre système instable.
  • Attention au dual boot : si vous partagez une partition avec Windows, les permissions Linux peuvent ne pas s’appliquer correctement ; utilisez les options de montage adaptées (umask).

Conseils d’utilisation contextualisée

Pour un script personnel que vous seul exécutez, chmod 700 est suffisant. Pour un fichier de configuration partagé avec un groupe, utilisez chmod 640 (lecture pour le groupe, rien pour les autres). Sur un serveur web, les fichiers doivent être en 644 et les dossiers en 755 pour des raisons de sécurité. N’oubliez pas que la commande chown permet aussi de changer le propriétaire et le groupe, ce qui est souvent complémentaire.

Questions fréquentes

Q : Quelle est la différence entre chmod 777 et chmod 755 ?
R : Le 777 donne tous les droits à tout le monde, alors que le 755 donne l’écriture seulement au propriétaire. Le 777 est risqué car n’importe qui peut supprimer ou modifier le fichier.

Q : Comment voir les permissions actuelles d’un fichier ?
R : Utilisez la commande ls -l pour lister les permissions sous forme de chaîne (ex : -rwxr-xr-x).

Portrait de Philippe Banquet

Ingénieur informaticien indépendant depuis plus de vingt ans, Philippe Banquet est spécialisé dans l’administration Linux/Unix, le scripting et le développement en C, Perl et shell. Auteur technique et formateur, il privilégie une approche terrain, claire et pédagogique pour expliquer les systèmes, les réseaux et les environnements professionnels.

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.