comment Modifier les permissions d'un fichier ou d'un dossier? Imprimer

  • 0

 

 

comment Modifier les permissions d'un fichier ou d'un dossier?

 

 

  •   Pour modifier les permissions d'un fichier ou d'un dossier: 

 $ sudo chmod 777 ./nom_du_fichier

 

  • modifie les permissions pour le fichier: 

 $ sudo chmod 777 ./nom_du_dossier

 

  • modifie les permissions pour le dossier:

 $ sudo chmod -R 777 ./nom_du_dossier

 

  • modifie les permissions pour le dossier et tous les fichiers du dossier:

Les permission sont données dans l'ordre user - groupe - autre

La lecture = 4

L'écriture = 2

L'exécution = 1

Tous les droits = 7

 
  • Les droits des fichiers d'un répertoire peuvent être affichés par la commande
 ls -l 

 

  • Les droits d'accès apparaissent alors comme une liste de 10 symboles. :
 drwxr-xr-x 

     Le premier symbole peut être -d, soit l, entres autres. Il indique la nature du fichier :

  • - : fichier classique
  • d : directory : répertoire
  • l : link : lien symbolique
  • c : character : périphérique de type caractère
  • b : block : périphérique de type bloc
  • p : pipe : tube, tuyau ou file (d'attente), 
  • s : socket

Suivent ensuite 3 groupes de 3 symboles chacun, indiquant si le fichier (ou répertoire) est autorisé en lecture, écriture ou exécution. Les 3 groupes correspondent, dans cet ordre, aux droits du propriétaire, du groupe puis du reste des utilisateurs. Dans le paragraphe introductif, vous aurez remarqué des lettres en gras dans les termes anglais. Ce sont ces lettres qui sont utilisées pour symboliser lesdites permissions. Si la permission n'est pas accordée, la lettre en question est remplacé par « - ». Si l'on reprend les lettres données pour lecture/écriture/exécution (read/write/execute), nous obtenons : rwx.

 

  • Une autre commande très pratique permet de visualiser d'un coup les droits (et les propriétaires) de tous les répertoires parents (voir chemins) d'une ressource spécifique :
 namei -mo /chemin/ 

 

Explication par l'exemple:

 - Reprenons l'exemple théorique précédent :

 drwxr-xr-x 

 

 - Il se traduit de la manière suivante :

  • d : c'est un répertoire.
  • rwx pour le 1er groupe de 3 symboles : son propriétaire peut lire, écrire et exécuter.
  • r-x pour le 2e groupe de 3 symboles : le groupe peut uniquement lire et exécuter le fichier, sans pouvoir le modifier.
  • r-x pour le 3ème groupe de 3 symboles : le reste du monde peut uniquement lire et exécuter le fichier, sans pouvoir le modifier.

 

- En pratique, en exécutant la commande suivante :

  ls -l 

- on obtient la liste du contenu du répertoire courant, par exemple :

drwxr-xr-x   6 cyrille cyrille     4096 2008-10-29 23:09 Bureau
drwxr-x---   2 cyrille cyrille     4096 2008-10-22 22:46 Documents
lrwxrwxrwx   1 cyrille cyrille       26 2008-09-22 22:30 Examples -> /usr/share/example-content
-rw-r--r--   1 cyrille cyrille  1544881 2008-10-18 15:37 forum.xcf
drwxr-xr-x   7 cyrille cyrille     4096 2008-09-23 18:16 Images
drwxr-xr-x   2 cyrille cyrille     4096 2008-09-22 22:45 Modèles
drwxr-xr-x 267 cyrille cyrille    20480 2008-10-27 22:17 Musique
drwxr-xr-x   2 cyrille cyrille     4096 2008-09-22 22:45 Public
drwxr-xr-x   2 cyrille cyrille     4096 2008-10-26 13:14 Vidéos

 

- On retrouve dans la première colonne le groupe de 10 caractères permettant de connaître les droits pour chaque fichier.

Ainsi, pour le fichier forum.xcf, on a :

 -rw-r--r-- 
  • Le 1er caractère est - ⇒ c'est un fichier.
  • Le premier groupe de 3 caractères est rw- ⇒ le propriétaire a le droit de lecture et écriture (mais pas d'exécution) sur le fichier.
  • Les 2 groupes suivants sont r-- ⇒ Les utilisateurs du groupe et les autres n'ont que le droit de lecture (pas d'écriture, ni d'exécution) .

 

 

Chmod, pour changer les droits:

L'outil chmod (change mode, changer les permissions) permet de modifier les permissions sur un fichier. Il peut s'employer de deux façons : soit en précisant les permissions de manière octale, à l'aide de chiffres1) ; soit en ajoutant ou en retirant des permissions à une ou plusieurs catégories d'utilisateurs à l'aide des symboles r w et x, que nous avons présentés plus haut. Nous préférerons présenter cette seconde façon ("ajout ou retrait de permissions à l'aide des symboles"), car elle est probablement plus intuitive pour les néophytes. Sachez seulement que les deux méthodes sont équivalentes, c'est-à-dire qu'elles affectent toutes deux les permissions de la même manière.

 
En gérant chaque droit séparément

       De cette façon, on va choisir :

  1. À qui s'applique le changement
    • u (user, utilisateur) représente la catégorie "propriétaire" ;
    • g (group, groupe) représente la catégorie "groupe propriétaire" ;
    • o (others, autres) représente la catégorie "reste du monde" ;
    • a (all, tous) représente l'ensemble des trois catégories.
  2. La modification que l'on veut faire
    • + : ajouter
    • - : supprimer
    • = : affectation
  3. Le droit que l'on veut modifier
    • r read ⇒ lecture
    • w : write ⇒ écriture
    • x : execute ⇒ exécution
    • X : eXecute ⇒ exécution, concerne uniquement les répertoires (qu'ils aient déjà une autorisation d'exécution ou pas) et les fichiers qui ont déjà une autorisation d'exécution pour l'une des catégories d'utilisateurs. Nous allons voir plus bas dans la partie des traitements récursifs l'intérêt du X.

 

Par exemple :

 chmod o-w fichier3 

enlèvera le droit d'écriture pour les autres.

 

 chmod a+x 

ajoutera le droit d'exécution à tout le monde.

 

On peut aussi combiner plusieurs actions en même temps :

  • On ajoute la permission de lecture, d'écriture et d'exécution sur le fichier fichier3 pour le propriétaire ;
  • On ajoute la permission de lecture et d'exécution au groupe propriétaire, on retire la permission d'écriture ;
  • On ajoute la permission de lecture aux autres, on retire la permission d'écriture et d'exécution.
 chmod u+rwx,g+rx-w,o+r-wx fichier3 

 

 

 

 


Cette réponse était-elle pertinente?

« Retour