« Chmod - Les bases des permissions » : différence entre les versions
Aucun résumé des modifications |
→Modifier les permissions sur les fichiers et les répertoires en employant la notification numérique |
||
| (13 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
= Les différentes catégories d'utilisateurs avec leurs abréviations = | |||
{| class="wikitable" style="margin:auto; margin-left: 0px;" | {| class="wikitable" style="margin:auto; margin-left: 0px;" | ||
| Ligne 13 : | Ligne 13 : | ||
---- | ---- | ||
= Les différents attributs avec leurs abréviations = | |||
{| class="wikitable" style="margin:auto; margin-left: 0px;" | {| class="wikitable" style="margin:auto; margin-left: 0px;" | ||
| Ligne 33 : | Ligne 33 : | ||
---- | ---- | ||
= Modifier les permissions sur les fichiers et les répertoires en employant la notification alphabétique = | |||
'''chmod [ugo] [+-=] [rwx]''' | '''chmod [ugo] [+-=] [rwx]''' | ||
| Ligne 73 : | Ligne 73 : | ||
---- | ---- | ||
= Modifier les permissions sur les fichiers et les répertoires en employant la notification numérique = | |||
'''chmod [0-7] [0-7] [0-7]''' | '''chmod [0-7] [0-7] [0-7]''' | ||
| Ligne 80 : | Ligne 80 : | ||
| || '''Propriétaire''' || '''Groupe''' || '''Autre | | || '''Propriétaire''' || '''Groupe''' || '''Autre | ||
|- | |- | ||
| Permissions || r,w,x || r,w,x || r,w,x | | Permissions || <code>r,w,x</code> || <code>r,w,x</code> || <code>r,w,x</code> | ||
|- | |- | ||
| Représentation numérique || 4, 2, 1 || 4, 2, 1 || 4, 2, 1 | | Représentation numérique || <code>4,2,1</code> || <code>4,2,1</code> || <code>4,2,1</code> | ||
|} | |} | ||
== Permissions numériques représentées avec '''ls -l''' == | |||
{| class="wikitable" style="margin:auto; margin-left: 0px;" | {| class="wikitable" style="margin:auto; margin-left: 0px;" | ||
| Ligne 105 : | Ligne 105 : | ||
|} | |} | ||
== Permissions courantes et représentation '''ls -l''' == | |||
{| class="wikitable" style="margin:auto; | {| class="wikitable sortable" style="margin: auto; text-align: left; width: 80%;" | ||
| '''Commande chmod''' | ! style="background: #f0f0f0;" | '''Commande chmod''' | ||
! style="background: #f0f0f0;" | '''Représentation ls -l''' | |||
! style="background: #f0f0f0;" | '''Signification''' | |||
|- | |- | ||
| chmod 400 || -r-------- || Le propriéaire peut lire,les autres ne peuvent rien faire du tout. | | chmod 400 || -r-------- || Le propriéaire peut lire,les autres ne peuvent rien faire du tout. | ||
| Ligne 131 : | Ligne 133 : | ||
---- | ---- | ||
< | = Chmod - Modifier les permissions de façon récursive = | ||
<span style="color: #196f3d;">Quelques exemples pratiques de la commande chmod avec l’option récursive (-R) pour modifier les permissions des fichiers et dossiers dans un environnement Linux.</span> | |||
'''Donner la permission de lecture et d’exécution à tous les fichiers et dossiers dans un répertoire :''' | |||
chmod -R a+rx /chemin/vers/le/dossier/ | |||
Explication : | |||
*Ajoute (+) les permissions de lecture (r) et d’exécution (x) pour tous les utilisateurs (a) de manière récursive. | |||
'''Retirer la permission d’écriture pour le groupe et les autres utilisateurs :''' | |||
chmod -R go-w /chemin/vers/le/dossier/ | |||
Explication : | |||
*Retire (-) la permission d’écriture (w) pour le groupe (g) et les autres utilisateurs (o) de manière récursive. | |||
'''Définir des permissions spécifiques pour les fichiers et dossiers (exemple : 755 pour les dossiers, 644 pour les fichiers) :''' | |||
find /chemin/vers/le/dossier/ -type d -exec chmod 755 {} \; | |||
find /chemin/vers/le/dossier/ -type f -exec chmod 644 {} \; | |||
Explication : | |||
*find permet de cibler uniquement les dossiers (-type d) ou les fichiers (-type f) : | |||
*chmod 755 donne les permissions rwxr-xr-x aux dossiers. | |||
*chmod 644 donne les permissions rw-r--r-- aux fichiers. | |||
'''Donner uniquement au propriétaire le droit de lecture et d’écriture, et interdire tout accès aux autres :''' | |||
chmod -R 700 /chemin/vers/le/dossier/ | |||
Explication : | |||
*Définit les permissions à rwx------ pour le propriétaire, et retire tous les droits pour le groupe et les autres. | |||
'''Ajouter la permission d’exécution pour tous les fichiers .sh dans un répertoire :''' | |||
chmod -R +x /chemin/vers/le/dossier/*.sh | |||
Explication : | |||
*Ajoute la permission d’exécution (+x) à tous les fichiers avec l’extension .sh dans le répertoire et ses sous-répertoires. | |||
'''Copier les permissions d’un fichier/dossier vers un autre (en utilisant chmod avec –reference) :''' | |||
chmod -R --reference=/chemin/vers/le/fichier_source /chemin/vers/le/dossier_cible/ | |||
*Explication : Applique les mêmes permissions que le fichier/dossier source à la cible, de manière récursive. | |||
'''Retirer toutes les permissions pour "autres" utilisateurs :''' | |||
chmod -R o-rwx /chemin/vers/le/dossier/ | |||
Explication : | |||
*Retire toutes les permissions (rwx) pour les "autres" utilisateurs (o) de manière récursive. | |||
---- | |||
= Voir également = | |||
<big>'''Gestion des droits'''</big> | |||
[[Chmod - Les bases des permissions|Chmod - Les bases des permissions]] | |||
[[La gestion des droits sous Linux (sticky bit - sgid - suid)|La gestion des droits sous Linux (sticky bit - sgid - suid)]] | |||
<big>'''Utilisateurs et groupes'''</big> | |||
[[La création et la suppression des utilisateurs et des groupes avec les commandes Shell Linux|La création et la suppression des utilisateurs et des groupes avec les commandes Shell Linux]] | |||
[[Modifier les propriétés d’un compte utilisateur avec usermod sous Linux|Modifier les propriétés d’un compte utilisateur avec usermod sous Linux]] | |||
[[ | [[Modifier le propriétaire et/ou le groupe propriétaire d’un fichier ou répertoire avec chgrp et chown sous Linux|Modifier le propriétaire et/ou le groupe propriétaire d’un fichier ou répertoire avec chgrp et chown sous Linux]] | ||
Dernière version du 10 décembre 2025 à 18:35
Les différentes catégories d'utilisateurs avec leurs abréviations
| Catégorie d’utilisateur | Abréviation |
| Utilisateur (propriétaire) | u |
| Groupe | g |
| Autres (others) | o |
Les différents attributs avec leurs abréviations
| Attribut | Abréviation | Signification pour un fichier | Signification pour un répertoire |
| Lecture | r | Lisible | Listable avec ls. |
| Écriture | w | Modifiable | Peut être effacé renommé ou recevoir des fichiers. |
| Exécutable | x | Peut être exécuté en tant que programme | Accès en lecture des fichiers et sous répertoires et exécution des fichiers. |
| suid | s | N’importe quel utilisateur peut exécuter le fichier avec les permissions du propriétaire. | Non applicable |
| sgid | s | N’importe quel utilisateur peut exécuter le fichier avec les droits du groupe auquel il appartient. | Tous les fichiers nouvellement créés dans le répertoire appartiennent au groupe propriétaire du répertoire. |
| Sticky bit | t | L’utilisateur ne peut effacer ou renommer les fichiers à moins qu’il ne soit le propriétaire ou celui du répertoire qui les contient. |
Modifier les permissions sur les fichiers et les répertoires en employant la notification alphabétique
chmod [ugo] [+-=] [rwx]
Vous pouvez vérifier le résultat avec la commande :
ls -l mon_fichier
Exemples :
chmod g+w mon_fichier
Autorisation en écriture pour le groupe.
chmod go+w mon_fichier
Autorisation en écriture pour le groupe ainsi qu’à tous les autres utlisateurs.
chmod a=rw mon_fichier
Autorisations en lecture et en écriture pour tout le monde (propriétaire, groupe et autres).
chmod go-w mon_fichier
Retirer la permission en écriture au groupe et aux autres utilisateurs.
chmod o-r mon_fichier
Retirer la permission en lecture aux autres utilisateurs.
chmod g=r mon_fichier
Le groupe aura seulement la permission en lecture.
chmod o= mon_fichier
chmod est égal à rien, ce qui revient à supprimer toutes les permissions pour les autres utilisateurs.
Modifier les permissions sur les fichiers et les répertoires en employant la notification numérique
chmod [0-7] [0-7] [0-7]
| Propriétaire | Groupe | Autre | |
| Permissions | r,w,x |
r,w,x |
r,w,x
|
| Représentation numérique | 4,2,1 |
4,2,1 |
4,2,1
|
Permissions numériques représentées avec ls -l
| 0 | --- |
| 1 | --x |
| 2 | -w- |
| 3 | -wx |
| 4 | r-- |
| 5 | r-x |
| 6 | rw- |
| 7 | rwx |
Permissions courantes et représentation ls -l
| Commande chmod | Représentation ls -l | Signification |
|---|---|---|
| chmod 400 | -r-------- | Le propriéaire peut lire,les autres ne peuvent rien faire du tout. |
| chmod 644 | -rw-r--r-- | Tout le monde peut lire, seul le propriétaire peut modifier. |
| chmod 660 | -rw-rw---- | Le propriétaire et le groupe peuvent lire et modifier, les autres ne peuvent rien faire. |
| chmod 664 | -rw-rw-r-- | Tout le monde peut lire, le propriétaire et le groupe peuvent modifier. |
| chmod 700 | -rwx------ | Le propriétaire peut lire, écrire et exécuter, les autres ne peuvent rien faire. |
| chmod 744 | -rwxr--r-- | Tout le monde peut lire, seul le propriétaire peut modifier et exécuter. |
| chmod 750 | -rwxr-x--- | Le propriétaire et le groupe peuvent lire et exécuter, seul le propriétaire peut modifier, les autres ne peuvent rien faire. |
| chmod 755 | -rwxr-xr-x | Tout le mode peut lire et exécuter, seul le propriétaire peut modifier. |
| chmod 777 | -rwxrwxrwx | Tout le monde peut lire, écrire et exécuter. |
Chmod - Modifier les permissions de façon récursive
Quelques exemples pratiques de la commande chmod avec l’option récursive (-R) pour modifier les permissions des fichiers et dossiers dans un environnement Linux.
Donner la permission de lecture et d’exécution à tous les fichiers et dossiers dans un répertoire :
chmod -R a+rx /chemin/vers/le/dossier/
Explication :
- Ajoute (+) les permissions de lecture (r) et d’exécution (x) pour tous les utilisateurs (a) de manière récursive.
Retirer la permission d’écriture pour le groupe et les autres utilisateurs :
chmod -R go-w /chemin/vers/le/dossier/
Explication :
- Retire (-) la permission d’écriture (w) pour le groupe (g) et les autres utilisateurs (o) de manière récursive.
Définir des permissions spécifiques pour les fichiers et dossiers (exemple : 755 pour les dossiers, 644 pour les fichiers) :
find /chemin/vers/le/dossier/ -type d -exec chmod 755 {} \;
find /chemin/vers/le/dossier/ -type f -exec chmod 644 {} \;
Explication :
- find permet de cibler uniquement les dossiers (-type d) ou les fichiers (-type f) :
- chmod 755 donne les permissions rwxr-xr-x aux dossiers.
- chmod 644 donne les permissions rw-r--r-- aux fichiers.
Donner uniquement au propriétaire le droit de lecture et d’écriture, et interdire tout accès aux autres :
chmod -R 700 /chemin/vers/le/dossier/
Explication :
- Définit les permissions à rwx------ pour le propriétaire, et retire tous les droits pour le groupe et les autres.
Ajouter la permission d’exécution pour tous les fichiers .sh dans un répertoire :
chmod -R +x /chemin/vers/le/dossier/*.sh
Explication :
- Ajoute la permission d’exécution (+x) à tous les fichiers avec l’extension .sh dans le répertoire et ses sous-répertoires.
Copier les permissions d’un fichier/dossier vers un autre (en utilisant chmod avec –reference) :
chmod -R --reference=/chemin/vers/le/fichier_source /chemin/vers/le/dossier_cible/
- Explication : Applique les mêmes permissions que le fichier/dossier source à la cible, de manière récursive.
Retirer toutes les permissions pour "autres" utilisateurs :
chmod -R o-rwx /chemin/vers/le/dossier/
Explication :
- Retire toutes les permissions (rwx) pour les "autres" utilisateurs (o) de manière récursive.
Voir également
Gestion des droits
Chmod - Les bases des permissions
La gestion des droits sous Linux (sticky bit - sgid - suid)
Utilisateurs et groupes
La création et la suppression des utilisateurs et des groupes avec les commandes Shell Linux
Modifier les propriétés d’un compte utilisateur avec usermod sous Linux