Ce document résume les principales commandes liées aux permissions de fichiers et de dossiers sous Linux.
Chaque fichier ou dossier possède des droits définis pour trois catégories d’utilisateurs :
| Catégorie | Abréviation | Description |
|---|---|---|
| Utilisateur | u |
Le propriétaire du fichier |
| Groupe | g |
Les membres du groupe associé |
| Autres | o |
Tous les autres utilisateurs |
Les permissions possibles sont :
| Lettre | Valeur | Signification | Fichiers | Dossiers |
|---|---|---|---|---|
r |
4 | read (lecture) | Lire le contenu | Lister les fichiers |
w |
2 | write (écriture) | Modifier / supprimer | Ajouter / supprimer des fichiers |
x |
1 | execute (exécution) | Lancer un programme | Entrer dans le dossier |
ls -l [chemin]
Exemple :
-rwxr-xr--
Les 10 premiers caractères décrivent le type et les permissions :
- → fichier ordinaired → dossierl → lien symboliquePuis les groupes de trois lettres :
rwx → propriétairer-x → grouper-- → autreschmodchmod [qui][opération][permissions] [fichier]
| Élément | Signification |
|---|---|
qui |
u (utilisateur), g (groupe),
o (autres), a (tous) |
opération |
+ ajouter, - retirer, =
définir précisément |
permissions |
r, w, x |
chmod u+x script.sh # ajoute le droit d'exécution au propriétaire
chmod g-w notes.txt # retire le droit d’écriture au groupe
chmod o=r fichier.txt # autorise la lecture pour les autres uniquement
chmod a+x programme.sh # rend exécutable pour tout le monde
chmod u=rw,g=rw,o=r notes.txt # Combine plusieurs droits dans une seule commande
Chaque droit correspond à une valeur numérique : | Droit | Valeur | | ------------- | ------ | | lecture (r) | 4 | | écriture (w) | 2 | | exécution (x) | 1 |
On additionne les valeurs pour chaque catégorie :
| Code | Propriétaire | Groupe | Autres | Droits |
|---|---|---|---|---|
600 |
rw- | --- | --- | Lecture/écriture pour l’utilisateur uniquement |
644 |
rw- | r-- | r-- | Lecture pour tous, écriture pour le propriétaire |
755 |
rwx | r-x | r-x | Exécution pour tous |
700 |
rwx | --- | --- | Fichier/dossier privé |
chmod 754 script.sh
➡️ 7 (rwx) – propriétaire
➡️ 5 (r-x) – groupe
➡️ 4 (r--) – autres
chmod -R 755 /chemin/dossier
➡️ applique les mêmes permissions à tous les fichiers et sous-dossiers.
chownPermet de modifier le propriétaire et/ou le groupe d’un fichier.
sudo chown [nouveau_propriétaire]:[nouveau_groupe] [fichier]
| Cas d’usage | Commande | Explication |
|---|---|---|
| Changer le propriétaire uniquement | sudo chown pierre fichier.txt |
Le groupe reste inchangé |
| Changer le groupe uniquement | sudo chown :etudiants fichier.txt |
Le propriétaire reste inchangé |
| Changer les deux | sudo chown pierre:etudiants rapport.txt |
Les deux champs sont mis à jour |
| Appliquer récursivement | sudo chown -R pierre:etudiants /dossier |
Inclut tous les fichiers |
| Action | Utilisateur autorisé | Exemple |
|---|---|---|
Changer le propriétaire
(chown) |
root uniquement | sudo chown alice fichier.txt |
Changer le groupe (chgrp) |
Le propriétaire du fichier s’il est membre du groupe cible, ou root | chgrp etudiants fichier.txt |
Changer les deux
(chown user:group) |
root uniquement | sudo chown alice:profs fichier.txt |
Note
Un utilisateur ordinaire ne peut pas transférer la propriété de ses fichiers à quelqu’un d’autre (cela éviterait de contourner les quotas ou la sécurité).
chgrpchgrp [groupe] [fichier]
Exemple :
chgrp profs cours.pdf
chgrp -R etudiants /home/etudiants/
| Bit | Nom | Effet | Exemple d’usage |
|---|---|---|---|
| s | SetUID | Exécute le programme avec les droits du propriétaire | /usr/bin/passwd |
| s | SetGID | Les fichiers créés héritent du groupe du dossier | Dossiers partagés |
| t | Sticky Bit | Seul le propriétaire peut supprimer ses fichiers | /tmp |
chmod +t /dossier_partagé
➡️ Empêche les autres utilisateurs de supprimer les fichiers des autres.
| Action | Commande | Description |
|---|---|---|
| Voir les permissions | ls -l |
Affiche les droits actuels |
| Modifier les droits | chmod |
Change les permissions |
| Changer le propriétaire | chown |
Modifie l’utilisateur et/ou le groupe |
| Changer le groupe | chgrp |
Modifie uniquement le groupe |
| Rendre exécutable | chmod +x fichier |
Ajoute le droit d’exécution |
| Retirer tous les droits aux autres | chmod o-rwx fichier |
Fichier privé |
| Appliquer à tous les sous-dossiers | chmod -R ... |
Mode récursif |
chmod 755 suffit
généralement.chmod 600.sudo avec prudence lorsque tu modifies les
droits d’un autre utilisateur.