La gestion des droits avec la commande CHMOD


La gestion des droits avec la commande CHMOD
Publié par weiouch , le 29-Aug-2006

Bonjour,

Je me balladais sur un autre forum [pas bieeennn!] et je suis tombé sur un post demandant des explications sur la commande chmod. J'ai répondu et me suis dis que ces quelques explications pourraient peut-être faire plaiser à mes potes de forum-pc...alors foilà !

Un des points forts du système Unix est la sécurité et elle est très présente au niveau des fichiers. C'est ce qu'on appelle la gestion des permissions.
Vous pouvez allouer et désallouer des droits à plusieurs catégories d'utilisateurs, au grè de vos envies ;-)

Comme un exemple vaut mieux qu'un long discours [ué je sais c'est pas la bonne phrase mais bon...]:

En console, si vous tapez ls -l vous afficherez la liste des fichiers du répértoire courant [celui dans lequel vous êtes] ainsi que plusieurs informations correspondantes. Imaginez que vous ayez, dans votre répértoire, un fichier nommé forum-pc.txt

Les informations affichées seront alors:

-rwxrw-r-- 1 weiouch users 24 Oct 21 16:30 forum-pc.txt

Significations des champs:

* -rwxrw-r-- : type de fichier et permissions
* 1 : le nombre de lien [i-node / i-noeud]
* weiouch : le nom du propriétaire du fichier
* users : le groupe d'utilisateur dont fait partie le propriétaire
* 24 : la taille du fichier en octet
* Oct 21 : la date de la dernière modification
* 16:30 : l'heure de la dernière modification
* aidoforum.txt : le nom du fichier

Ce qui nous interesse ici c'est -rwxrw-r--.

Les droits d'accès sont divisés en 3 groupes:

* les accès du propriétaire du fichier: ici rwx
* les accès des membres du même groupe que le propriétaire: ici rw-
* les accès des autres utilisateurs: ici r--

Les accès sont eux-même divisés en 3 "droits":

* droit de lecture, noté r pour read
* droit d écriture, noté w pour write
* droit d' exécution, noté x pour execute
Bien sûr, il est possible de cumuler plusieurs droits.

Ainsi, -rwxrw-r-- signifie que:
* le propriétaire à les droits de lecture, écriture et exécution
* les membres du groupe users ont les droits de lecture et écriture
* les autres utilisateurs ont uniquement le droit de lecture

La commande chmod sert à changer les droits d'accès sur un fichier ou répértoire. Elle peut s'utiliser comme ceci: chmod nombre nom_fichier.

Explication sur nombre.

Par facilité, on a associé des chiffres à chaque droit.
Ces chiffres sont calculés avec les puissances positives de 2 [binaire] :
rwx = 2^2 + 2^1 + 2^0 = 4 + 2 + 1.
Voilà les valeurs de chaque droit.

Reprenons l'exemple ci-dessus: -rwxrw-r--.
Tous les droits pour le propriétaire: 4 + 2 + 1 = 7.
Lecture et écriture pour les membres du même groupe: 4 + 2 = 6.
Lecture seulement pour les autres utilisateurs: 1.

Donc, pour "donner " ces droits au fichier forum-pc.txt, il a fallu taper la commande chmod 764 fpc.txt

Par défaut, les droits d'un fichier sont -rw-rw-rw [666] et ceux d'un répértoire sont -rwxrwxrwx [777].

Pour changer les droits d'un fichier, vous devez être propritétaire du fichier ou administrateur [root].

Ouf c'est fini ;-)

J'espère que ces quelques lignes auront pu vous éclairer d'avantage.

++
Cet article vient de Forum-PC.net - Logiciels, Télécharger, Forums informatique, Informations
http://www.forum-pc.net

L'URL de cet article est :
http://www.forum-pc.net/astuces/astuces-35.html