Gestion des droits
ll (alias de
ls -alF)Cette commande permet d'obtenir la description complète d'un répertoire, y compris les fichiers et répertoires cachés (qui commencent par un point) :
ll L'affichage résultant se lit ligne par ligne, par exemple :
drwxrwxr-x 3 houdry dps 1024 Apr 28 15:28 ./
drwxr-xr-x 16 houdry dps 512 Apr 18 16:19 ../
-rw-rw-r-- 1 parmentf dilib 2848 Apr 25 11:08 Make.gif
-rw-rw-r-- 1 parmentf dilib 2631 Apr 25 11:08 Shell.gif
-rw-rw-r-- 1 houdry dps 7817 Apr 25 11:44 redirPipes.html
-rw-rw-r-- 1 parmentf dilib 2405 Apr 24 17:36 make.html
-rwxrwxr-- 1 houdry dps 235 Apr 24 17:01 exotp.sh*De nombreux éléments d'information sont visibles avec une commande de listing long. Ils sont au nombre de sept, avec dans l'ordre des colonnes :
- la liste des droits sur 10 positions (ex.: drwxrwxrwx)
- position 1 : le type d'entrée, fichier ou répertoire
- positions 2-4 : les droits de l'utilisateur (user)
- positions 5-7 : les droits du groupe de l'utilisateur
- positions 8-10: les droits des autres groupes
d: entrée répertoire-: entrée fichierr: lecture autoriséew: écriture autorisée (et écrasement)x: fichier exécutable ou répertoire parcourable - la taille en blocs de l'entrée (peu utile pour nous)
- le nom du propriétaire (user unix)
- le groupe du propriétaire attaché à l'entrée
- la taille de l'entrée en octets
- les date et heure de la création ou de la dernière mise à jour
- le nom du répertoire ou du fichier
- la liste des droits sur 10 positions (ex.: drwxrwxrwx)
who, whoami, id
Un utilisateur unix est identifié par deux choses :
- son code utilisateur (ex.: parmentf ou houdry)
- son ou ses groupes (ex.: dps)
Différentes commandes permettent de retrouver ces informations.
Identification de l'utilisateur courant :
whoami Identification des utilisateurs du système :
who Affichage des code et groupe de l'utilisateur :
id
umask
Cette commande permet de paramétrer les droits rwx qui vont servir pour la création des nouveaux fichiers. Deux syntaxes sont possibles, celles qui suivent sont équivalentes et standard :
umask a=rx,ug+w
umask 002Les droits des 3 entités propriétaire (u), groupe du propriétaire (g) et autres groupes (o) doivent être précisés :
- a=rx pour mettre les droits r et x seulement pour tous les groupes (a=ugo, all)
- ug+w pour ajouter le droit w aux groupes u et g seulement
- 002 est un masque en octal
- 002 est la négation de l'équivalent à a=rx,ug+w (=775) - voir tableau qui suit
chmod
Cette commande permet de modifier les droits d'un fichier ou d'un répertoire. Pour pouvoir le faire, il faut en être propriétaire. Là aussi, il y a deux façons d'utiliser cette commande : avec les groupes ugoa et les droits rwx ou bien avec un profil octal (directement, sans prendre sa négation comme avec
umask). Le tableau suivant résume les cas possibles :lettres binaire octal --- 000 0 --x 001 1 -w- 010 2 -wx 011 3 r-- 100 4 r-x 101 5 rw- 110 6 rwx 111 7 Par exemple, pour positionner les droits d'un fichier
Fileà rwxr-xr-- :chmod 754 [File]
chmod u=rwx,g=rx,o=r [File]Pour modifier des droits positionnés à r--r----x en rwxrw-r--, on peut aussi écrire :
chmod ug+w,u+x,a+r,o-x [File]
chgrp
Cette commande permet de changer le groupe attaché à un fichier ou à un répertoire. Par exemple, un fichier
Fileest lié au groupe dps et il faut le changer pour le lier au groupe dilib (attention, il faut que le user appartienne aux deux groupes) :chgrp veille [File]
newgrp
Cette commande permet de changer le groupe d'appartenance de l'utilisateur. Cela peut être nécessaire pour accéder à des fichiers dont l'emploi est limité à certains groupes (par ex., dilib par rapport à dps). Pour changer de groupe, il faut appartenir aux deux (l'ancien et le nouveau).
À partir du moment où cette commande est lancée, les fichiers et répertoires créés le seront sous ce nouveau groupe.
newgrp veille