Pour modifier qui peut lire, écrire ou exécuter un fichier, Linux fournit
trois commandes : chmod (permissions), chown (propriétaire) et chgrp
(groupe). Ce guide montre comment les utiliser concrètement, avec les deux
notations de chmod — symbolique et octale.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Utiliser
chmoden notation symbolique (u+x,g-w,o=r) - Utiliser
chmoden notation octale (644,755,700) - Changer le propriétaire avec
chown - Changer le groupe avec
chgrp - Appliquer des modifications récursives sur un dossier
chmod : modifier les permissions
Section intitulée « chmod : modifier les permissions »Notation symbolique
Section intitulée « Notation symbolique »La notation symbolique désigne qui on modifie, quelle action et quelle permission :
| Qui | Signification |
|---|---|
u | User (propriétaire) |
g | Group (groupe) |
o | Others (autres) |
a | All (tout le monde) |
| Action | Signification |
|---|---|
+ | Ajouter une permission |
- | Retirer une permission |
= | Définir exactement ces permissions |
Exemples :
# Rendre un script exécutable par le propriétairechmod u+x script.sh
# Retirer l'écriture au groupe et aux autreschmod go-w rapport.txt
# Donner lecture seule à tout le mondechmod a=r document.txtVérifiez le résultat après chaque modification :
ls -l script.shNotation octale
Section intitulée « Notation octale »Chaque permission a une valeur numérique :
| Permission | Valeur |
|---|---|
r (read) | 4 |
w (write) | 2 |
x (execute) | 1 |
On additionne les valeurs pour chaque niveau (user, group, others) :
| Permissions | Calcul | Octal |
|---|---|---|
rwx | 4+2+1 | 7 |
rw- | 4+2+0 | 6 |
r-x | 4+0+1 | 5 |
r-- | 4+0+0 | 4 |
--- | 0+0+0 | 0 |
Pour chmod, on écrit trois chiffres : user, group, others.
# rw-r--r-- (lecture/écriture propriétaire, lecture seule pour les autres)chmod 644 rapport.txt
# rwxr-xr-x (exécutable par tous, écriture propriétaire seul)chmod 755 script.sh
# rwx------ (accès total propriétaire, rien pour les autres)chmod 700 dossier-prive/Les combinaisons les plus courantes
Section intitulée « Les combinaisons les plus courantes »| Octal | Symbolique | Usage typique |
|---|---|---|
644 | rw-r--r-- | Fichiers de configuration, documents |
755 | rwxr-xr-x | Scripts, dossiers partagés |
700 | rwx------ | Fichiers ou dossiers personnels sensibles |
600 | rw------- | Clés SSH, fichiers secrets |
chown : changer le propriétaire
Section intitulée « chown : changer le propriétaire »# Changer le propriétaire d'un fichiersudo chown alice fichier.txt
# Changer propriétaire ET groupe en une seule commandesudo chown alice:devs fichier.txtchgrp : changer le groupe
Section intitulée « chgrp : changer le groupe »# Changer le groupe d'un fichiersudo chgrp devs projet.txtchgrp est utile quand vous voulez modifier uniquement le groupe sans toucher
au propriétaire. Vous pouvez aussi utiliser chown :devs fichier.txt (notez
le : devant le groupe).
Modifications récursives
Section intitulée « Modifications récursives »Pour appliquer un changement à un dossier et tout son contenu :
# Permissions récursiveschmod -R 755 projet/
# Propriétaire récursifsudo chown -R alice:devs projet/Exemples pratiques
Section intitulée « Exemples pratiques »Rendre un script exécutable et le lancer
Section intitulée « Rendre un script exécutable et le lancer »-
Créez un script :
Fenêtre de terminal echo '#!/bin/bash' > mon-script.shecho 'echo "Bonjour !"' >> mon-script.sh -
Vérifiez les permissions actuelles :
Fenêtre de terminal ls -l mon-script.shRésultat -rw-r--r-- 1 bob bob 35 avr 6 10:00 mon-script.sh -
Ajoutez le droit d’exécution :
Fenêtre de terminal chmod u+x mon-script.sh -
Exécutez le script :
Fenêtre de terminal ./mon-script.sh
Partager un dossier avec un groupe
Section intitulée « Partager un dossier avec un groupe »-
Changez le groupe du dossier :
Fenêtre de terminal sudo chgrp devs projet/ -
Donnez les droits d’écriture au groupe :
Fenêtre de terminal chmod g+w projet/ -
Vérifiez :
Fenêtre de terminal ls -ld projet/Résultat drwxrwxr-x 2 bob devs 4096 avr 6 10:00 projet/
Dépannage
Section intitulée « Dépannage »| Symptôme | Cause probable | Solution |
|---|---|---|
chmod: opération non permise | Vous n’êtes pas propriétaire du fichier | Utiliser sudo chmod ou demander au propriétaire |
chown: opération non permise | chown nécessite root | Ajouter sudo devant la commande |
| Un script reste non exécutable | chmod appliqué sur le mauvais fichier | Vérifier avec ls -l le fichier exact |
| Tous les fichiers d’un dossier sont exécutables | chmod -R 755 appliqué au lieu de séparer fichiers/dossiers | Utiliser find avec -type f et -type d |
Permission refusée malgré chmod 777 | Le dossier parent n’a pas x | Vérifier les permissions du dossier parent avec ls -ld |
À retenir
Section intitulée « À retenir »chmodmodifie les permissions : notation symbolique (u+x) ou octale (644).chownchange le propriétaire (nécessitesudo).chgrpchange le groupe.- Les combinaisons courantes :
644(fichiers),755(scripts, dossiers),700(privé). - L’option
-Rapplique les modifications récursivement — à utiliser avec prudence.