Les permissions numériques
Notions théoriques
Nous avons vu que dans Linux, chaque fichier et répertoire a un ensemble de permissions qui détermine qui peut :
- lire,
- écrire
- ou exécuter un fichier spécifique.
Ces permissions sont généralement exprimées en mode symbolique (comme nous l'avons vu précédemment), mais elles peuvent aussi être exprimées en mode numérique, ou "octal".
Chaque permission est, dans ce cas, représentée par un chiffre :
- 4 pour "read" (lecture)
- 2 pour "write" (écriture)
- 1 pour "execute" (exécution)
Pour un fichier ou un répertoire,
-
on additionne ces chiffres pour obtenir une représentation numérique de ses permissions.
Par exemple :
- une permission "read-write" sera représentée par 6 (4+2),
- et une permission "read-execute" sera représentée par 5 (4+1).
-
Ensuite, on assemble les 3 chiffres pour représenter les permissions du propriétaire, du groupe et des autres.
Par exemple :
-
si le propriétaire a une permission "read-write-execute" 7 (4+2+1),
-
le groupe a une permission "read-execute" 5 (4+1),
-
et les autres ont une permission "read" 4 (4),
les permissions seront représentées par le nombre 754.
-
Exemple
Prenons un exemple avec un fichier nommé "membres.txt".
Pour changer les permissions de ce fichier en mode numérique,
on peut utiliser la commande
chmod
suivie du nombre représentant les permissions, puis du nom du fichier.
Par exemple, pour donner :
- au propriétaire une permission "read-write-execute",
- au groupe une permission "read-execute",
- et aux autres une permission "read",
on utiliserait la commande suivante :
chmod 754 membres.txt
Ensuite, on peut vérifier les permissions avec la commande ls -l
:
ls -l membres.txt
Cela devrait afficher quelque chose comme ceci :
-rwxr-xr-- 1 sio sio 0 Nov 25 09:20 membres.txt
Résumé
Valeurs utilisées pour définir les permissions sur les fichiers et les répertoires dans les systèmes d'exploitation Unix/Linux.
- La valeur alphanumérique est une représentation en lettres et symboles.
- La valeur octale est une représentation en base 8 des permissions.
Droit | Valeur Alphanumérique | Valeur Octale |
---|---|---|
Aucun droit | --- | 0 |
Exécution | --x | 1 |
Écriture | -w- | 2 |
Écriture et exécution | -wx | 3 |
Lecture | r-- | 4 |
Lecture et exécution | r-x | 5 |
Lecture et écriture | rw- | 6 |
Tous les droits | rwx | 7 |
Permissions sous Linux
Test de mémorisation/compréhension
TP pour réfléchir et résoudre des problèmes
Pour ce TP, nous allons créer le fichier "sharedfile.txt" dans votre répertoire personnel.
Nous allons ensuite modifier ses permissions en utilisant le mode numérique.
- Connectez-vous à votre serveur Linux.
- Naviguez vers votre répertoire personnel.
- Créez un nouveau fichier nommé "sharedfile.txt".
- En utilisant les valeurs numériques, modifiez les permissions de "sharedfile.txt" pour donner :
- au propriétaire une permission "read-write",
- au groupe une permission "read",
- et aux autres aucune permission.
N'oubliez pas de vérifier vos modifications avec la commande ls -l
.
Une solution
Vous devez être connecté pour voir le contenu.
N'oubliez pas, la pratique est la clé pour maîtriser une nouvelle compétence. Donc, si vous n'avez pas réussi du premier coup, ne vous découragez pas et essayez à nouveau.