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 :

  1. Les droits pour l'utilisateur propriétaire

  2. Les droits pour les utilisateurs membres du groupe propriétaire

  3. Les droits pour tous les autres utilisateurs

Fondamentalls -al

La commande ls -al affiche tous les fichiers et dossiers d'un répertoire, avec leurs propriétaires et leurs droits.

1
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

1
-rw------- 1 root  root   2048 mars  31 19:11 .config
2
drwx------ 2 stc   stc    4096 avril  3 20:25 firefox
3
-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.

FondamentalLes 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.

ExempleDroits en exécution et en lecture sur un dossier

  1. 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 commande ls par exemple).

  2. 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).

  3. 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é.