Droits
Les droits sous Linux
Il y'a 3 types de droits sous Linux:
- Lecture (r)
- Écriture (w)
- Exécution (x)
À noter : le droit d'exécution sur un répertoire permet d'entrer dans celui-ci.
Ces droits portent sur trois objets:
- L'utilisateur (u)
- Le groupe (g)
- Les autres (o)
Lecture des droits
Une commande comme ls -l permet de voir les droits en vigueur sur les objets. Ils se lisent de la façon suivante:
drwxrwxr-x 2 justine justine 4096 oct. 5 03:32 Backup-conf
De gauche à droite:
- d : le type d'objet, ici d pour directory (- pour fichier, l pour un lien)
- rwx : Les droits utilisateur
- rwx : Les droits du groupe
- r-- : les droits des autres
- justine : nom du propriétaire
- justine : Nom du groupe
- suivent la date et l'heure de dernière modification, et le nom de l'objet
NB : Root a tous les droits sur tout le système !
Lorsque je créé un répertoire, on aura au minimum les droits de lecture et exécution sur celui-ci.
Gestion des droits
Changer de propriétaire
Seul root peut le faire, avec la commande chown.
sudo chown alice dossier_test/
Changer de groupe
Ici le propriétaire actuel peut changer le groupe d'un fichier (et pas seulement root), avec chgrp:
chgrp alice dossier_test/
Administrer les droits
Avec la commande chmod, de la façon suivante:
Méthode relative
La méthode plus simple:
- on va d'abord indiquer sur qui va porter le changement (u, g, o, ou a pour tout le monde)
- Puis l'action à faire : + pour ajouter un droit, - pour en enlever un, = pour l'affecter
- puis le droit que l'on souhaite modifier : r, w, x
Par exemple:
Méthode absolue
Cette méthode utilise la représentation octale, avec des chiffres. Elle est plus puissante car on peut modifier les droits de tout le monde d'un seul coup. Les valeurs sont les suivantes:
Lecture | 4 |
Écriture | 2 |
Exécution | 1 |
Pas de droit | 0 |
Il suffit du coup de les combiner en les additionnant. Ainsi ma commande chmod suivie de trois chiffres indique les droits pour u, g et o d'un coup.
Exemple:
L'argument de récursion de chmod est -R