Affichage des droits sous Linux (ls -al)
Sous Linux, chaque dossier et chaque fichier :
appartient à un utilisateur et à un groupe ;
possède des droits.
Ces droits se divisent en trois :
Les droits pour l'utilisateur propriétaire
Les droits pour les utilisateurs membres du groupe propriétaire
Les droits pour tous les autres utilisateurs
Fondamental : ls -al
La commande ls -al
affiche tous les fichiers et dossiers d'un répertoire, avec leurs propriétaires et leurs droits.
drwxr-x--- 3 stc friends 4096 mars 31 19:11 .dir
Le premier caractère indique sur l'élément est un dossier (d) ou un fichier (-).
Les trois caractères suivants indiquent les droits de l'utilisateur propriétaire (ici stc a les droits rwx : lire, écrire, parcourir)
Les trois caractères suivants indiquent les droits des utilisateur membres du groupe propriétaire (ici les membres de friends ont les droits r-x : lire et parcourir, mais pas écrire)
Les trois caractères suivants indiquent les droits des autres utilisateurs (ici --- : aucun droit)
Le nombre suivant indique le nombre de sous-dossiers dans le dossier listé (ici .dir a 3 sous-dossiers, dont . et .. donc un seul vrai sous-dossier)
La chaîne suivante indique l'utilisateur propriétaire (ici l'utilisateur stc)
La chaîne suivante indique le groupe propriétaire (ici le groupe friends)
Le nombre suivant indique la taille de l'élément en octets (ici 4096 octets)
La chaîne suivante indique la date et l'heure de dernière modification du fichier (ici le 31 mars à 19h11)
La dernière chaîne est le nom du fichier (ici .dir)
Exemple :
-rw------- 1 root root 2048 mars 31 19:11 .config
drwx------ 2 stc stc 4096 avril 3 20:25 firefox
-rw-rw-r-- 1 stc www 31691 avril 2 10:11 test.jpg
Le fichier .config appartient à l'utilisateur root et au groupe root (il y a souvent un utilisateur et un groupe de même nom) ; l'utilisateur root peut le lire et le modifier, personne d'autre ne peut y accéder.
Le dossier firefox appartient à l'utilisateur stc et au groupe stc ; l'utilisateur stc peut y accéder, le lire et le modifier, personne d'autre ne peut y accéder.
Le fichier test.jpg appartient à l'utilisateur stc et au groupe www ; l'utilisateur stc ainsi que les membres du groupe www peuvent le lire et le modifier, les autres utilisateurs peuvent seulement le lire.
Fondamental : Les droits rwx
r (read) : lire le contenu d'un fichier (exécuter more par exemple) ou d'un dossier (ls)
w (write) : écrire un fichier (nano), écrire dans un dossier (touch)
x (execute) : exécuter un fichier, entrer dans un dossier (cd)
Attention :
Le droit x est le droit d'entrer dans un dossier, qui est différent du droit r de lire un dossier.
Exemple : Droits en exécution et en lecture sur un dossier
Posons que l'on se trouve dans le dossier
/home
et que l'on veuille lister les éléments du dossier/home/oranger/alavolette
(avec la commandels
par exemple).Posons également que le dossier
/home/oranger
n'a pas les droits de lecture (on ne pourra donc pas lister ses éléments), mais uniquement d’exécution (on pourra donc le traverser).Le dossier
/home/oranger/alavolette
, quant à lui est doté des droits de lecture pour notre utilisateur.
Si on lance la commande ls /home/oranger
, la commande va échouer : nous n'avons pas les droits de lecture.
Si maintenant on lance la commande ls /home/oranger/alavolette
, elle va bien s’exécuter car le droit d’exécution sur le dossier /home/oranger
nous a permis de le traverser afin de lister les éléments d'un de ses dossiers. Sans ce droit d’exécution, notre deuxième commande aurait elle aussi échoué.