next up previous contents index
Next: Autres commandes utiles Up: Gestion des processus Previous: Mesure du temps d'exécution

   
Droits d'accès

Les fichiers sont protégés en lecture, écriture ou exécution pour des raisons de sécurité. Pour avoir accès à un fichier, il faut en avoir les droits. La commande chmod permet de changer les droits d'accès à un fichier. Les droits peuvent être de lecture (r), d'écriture (w) ou d'exécution (x). On ajoute un droit à l'aide du signe ``+'' et on en retire à l'aide du signe ``-'', pour l'utilisateur (u), le groupe (g) ou les autres (o). Ainsi, la commande :

chmod +x fichier

rends exécutable un fichier (comme un script, par exemple), et

chmod ug+x fichier

rends exécutable un fichier pour l'utilisateur et tout le groupe. Les droits s'affichent avec la commande ls -l pour l'utilisateur, le groupe et les autres.

 Une autre facon de faire est d'attribuer un chiffre correspondant aux droits recherchés comme suit :

Ainsi :

rwxr-xr-x

équivaut à 400+200+100=700 pour l'utilisateur, 40+10=50 pour le groupe et 4+1=5 pour les autres, soit au total 700+50+5=755 :

chmod 755 fichier

Pour attribuer les droits d'accès par défaut, il faut exécuter la commande umask et attribuer un numéro particulier. Ce numéro est obtenu en soustreyant le chiffre 7 à chaque chiffre du numéro de droit d'accès. Ainsi, pour attribuer par défaut la valeur 750 (tous les droits pour l'utilisateur, droits de lecture et d'exécution pour le groupe et aucun pour les autres), il faut fournir à la commande umask la valeur 027 (7-7=0, 7-5=2 et 7-0=7) :  

umask 027

Cette ligne pourra figurer dans le fichier d'initialisation .bashrc pour que ces droits soient pris en compte à chaque session.

Pour définir des droits d'accès étendus (qui permettent à un utilisateur d'effectuer une opération sur des fichiers lui appartenant, comme modifier son mot de passe par exemple), utiliser l'option +s ou rajouter les valeurs 4000 pour l'utilisateur et 2000 pour le groupe. Pour le groupe :

chmod 2755

et pour l'utilisateur :

chmod 4755

Tout utilisateur peut copier des fichiers dans le répertoire /tmp/. Pour que ces fichiers ne puissent pas être effacés par un autre utilisateur que celui qui les a copiés et root, il faut positionner le Sticky Bit (en tant que root, bien sûr) :

chmod u+t /tmp

ou

chmod 1777 /tmp


next up previous contents index
Next: Autres commandes utiles Up: Gestion des processus Previous: Mesure du temps d'exécution
MATHIEU DECORE
1999-11-03
Merci de me dire ce que pensez de ce document.