| Chapitre 4 : Droits d’Accès |
Les types d'accès ont des significations différentes selon que l'on accède
à un fichier on à un répertoire.
Exemple :
Les problèmes peuvent se cumuler. Par exemple, si vous essayez de copier
un fichier dans un sous-répertoire (cp fic1 rep2/rep3/fic1), il faut que vous puissiez :
La commande chmod va permettre de changer les droits des fichiers/répertoires.
Spécification des modes d’accès numériques
chmod utilise le codage binaire, fondé sur l'association de valeurs numériques
aux différentes permissions : lecture : 4,
écriture : 2, exécution :
1, pas de permission : 0.
Chaque triplet se code par l'addition de 4, 2, 1, ou 0.
Pour un rwx
il faudra ajouter
4+2+1=7,
pour r-x 4+0+1=5 etc. Donc les combinaisons
vont de 0 (- aucun droit) à 7
(rwx tous les droits). Cela s'applique à chaque groupe triplet (propriétaire, groupe et autres).
Droits d'accès des répertoires
Accès
Fichier
Répertoire
r
lire le contenu du fichier
afficher contenu du répertoire
w
modifier le contenu du fichier
ajouter et supprimer fichier
x
lancer un fichier executable
rendre le répertoire courant
Exemples :
Pour exécuter un script shell on a besoin des droits d'accès de le cuture (r)
et d'execution (x). Pour exécuter un programme compilé on a besoin de droit d'accès (x).
Pour les répertoires, les permissions sont un peu spéciales.
Pour pouvoir entrer dans un répertoire, il faut avoir le droit d'exécution.
Le droit de lecture ne suffit pas à lui seul.
$ ls -ld Bin
drwxr-xr-x 7 user1 512 Jan 19 12:06 Bin
L'utilisateur « user1 » a tous les droits sur le répertoire courant. Les membres de son groupe et les autres peuvent le lire.
|
droits |
valeur octale |
valeur binaire |
|
--- |
0 |
000 |
|
--x |
1 |
001 |
|
-w- |
2 |
010 |
|
-wx |
3 |
011 |
|
r-- |
4 |
100 |
|
r-x |
5 |
101 |
|
rw- |
6 |
110 |
|
rwx |
7 |
111 |
Les permissions les plus courantes pour un fichier
|
644 |
rw- u r-- g r-- o |
|
640 |
rw- u r-- g --- o |
|
600 |
rw- u --- g --- o |
Les permissions les plus courantes pour un répertoire
|
755 |
rwx u r-x g r-x o |
|
751 |
rwx u r-x g --x o |
|
711 |
rwx u --x g --x o |
La commande chmod permettant de positionner
rwxr-x--- sur
fic1 à la syntaxe suivante:
chmod 750 fic1
Spécification des modes d’accès r,w,x
Il existe aussi un autre moyen de positionner les droits d'un fichier avec cette même commande. Vous pouvez utiliser des +, - ou = pour ajouter, supprimer ou fixer des droits à l'une ou l'autre des catégories u (user), g (group), o (other) ou à tous (a) en précisant le type de droit d'accès, r (read), w (write) ou x (execute).
Exemples :

Cette commande est très pratique quand vous souhaitez juste modifier des droits d'une catégorie à un ensemble de fichiers ayant des droits différents les uns des autres.
Si le changement de droits s'applique à un répertoire, vous pouvez changer tous les droits des fichiers et répertoires inclus dans ce répertoire via l'option -R.