Actualité

Divers

Vous reprendrez bien un peu de Terminal ?

Par Contributeur - Publié le

En cette fin de Week-End (mais non je ne veux pas jouer les rabat-joie…) et maintenant que vous êtes tous allés sur gete.net pour un cours sur les permissions posix, suite aux bons conseils de tonton Grouiky, il est temps pour moi de vous présenter trois comandes en rapport avec ce sujet: chmod, chgrp et chown.

Seulement, comme la première des trois demande quelques explications, je vais séparer ce cours en deux et je vous demanderai de bien vouloir attendre quelques jours pour en savoir plus sur les deux dernières commandes…

Commençons donc par chmod qui permet, comme son nom l'indique, de changer le mode d'un fichier. La manière la plus courante de se servir de cette commande est la suivante:
chmod OCTAL_MODE fichier1 fichier2…

Ici, le mode OCTAL_MODE est appliqué à tous les arguments (indifféremment fichiers ou dossiers) qui le suivent. OCTAL_MODE est un nombre à 3 chiffres en octal où chaque chiffre représente les permissions pour respectivement le possesseur, le groupe et les autres. Chaque valeur en octal peut bien sur s'écrire en binaire. Or, un chiffre octal équivaut à 3 chiffres significatifs maximum en binaire… comptez avec moi, tout cela va s'éclaircir:
1,2,3,4,5,6,7,10 (en octal)
1,10,11,100,101,110,111, 1000 (en binaire)


Ici, chaque chiffre composant le nombre binaire (un bit donc) donne ou non la permission pour: la lecture pour le bit le plus à gauche, l'écriture pour celui du milieu et l'execution pour le dernier. Cela nous donne donc:
rw-r--r-- correspond aux trois nombres binaires 110, 100 et 100 qui valent respectivement en octal 6, 4 et 4, ce qui donne un OCTAL_MODE de 644.

J'espère que vous avez compris le mécanisme, rassurez vous ça rentre vite et on a pas besoin de refaire toutes ces conversions à chaque fois…

Bien sûr, tout cela était pour la méthode "absolue" mais il existe aussi la méthode "relative" qui ajoute ou enlève des permissions à partir de ce qui existe déjà… mais je vous laisse la découvrir par vous même… dans man chmod bien sûr…