Retour à la liste des commandes

La commande CHMOD

La commande chmod est très utile lorsque l'on veut modifier les permissions de nos fichiers
ou de nos répertoires. Voici la syntaxe de base de cette commande:
	
	chmod [ -R ] format nom_fichier

où "format" prend l'une des formes suivantes:

	groupe_selection + permissions
	groupe_selection - permissions

où "groupe_selection" peut être défini comme n'importe quelle combinaison entre:

	- u  (pour "user");
	- g  (pour "group");
	- o  (pour "others");
	- a  (pour "all").

et où "permissions" peut être défini comme n'importe quelle combinaison entre:

	- r  (pour "read" -> lire);
	- w  (pour "write" -> écrire);
	- x  (pour "execute" -> exécuter).

Remarque:

Par défaut, "groupe_selection" = a. 

Qu'est-ce-que "group"? Chaque usager fait partie d'un groupe. Il existe différent groupe au département,
les principaux sont:
	- etudstat (pour les étudiants en statistique);
	- etudmat  (pour les étudiants en mathématiques);
	- matfin   (pour les étudiants en mathématiques financières).

N.B. Si vous changez les permissions d'un répertoire, les permissions des fichiers qui s'y retrouvent 
ne seront pas changées. L'option -R change les modes des fichiers dans les répertoires (R pour récursif).

Exemple:

À l'aide de la commande "ls -l fichier.txt", cette dernière nous retourne les permissions de 
fichier.txt


loup% ls -l fichier.txt
-rw-rw-rw-   1 stat  etudstat   314 Nov  4 10:47 fichier.txt


Les permissions sont données par la première colonne (-rw-rw-rw-). Voici comment les lire:

	- Les trois premières lettres appartiennent à "user";
	- Les trois prochaines appartiennent à "group";
	- Les trois dernières à "others". 

N.B. Les permissions sont toujours dans l'ordre "rwx". 

De cet exemple, nous voyons que "user", "group" et "others" ont tous les mêmes permissions, c'est-à-dire "rw".
Ce qui veut dire, que le fichier peut être lu et modifié par le propriétaire (stat), par les usagers du même groupe 
(etudstat), et par tout le monde incluant tous les autres groupes!!!!!

Si nous désirons donner la permission "x" pour exécutable à notre fichier pour les groupes "user" et "group",
il suffit d'écrire la commande:

	chmod ug+x fichier.txt

Ainsi,


loup% ls -l fichier.txt
-rwrxrwxrw-   1 stat  etudstat   314 Nov  4 10:47 fichier.txt


Remarquez qu'il n'y a pas de "x" au dernier groupe (qui est "other").

Si nous désirons cette fois si retirez les permissions de lecture (r) et d'écriture (w) pour le groupe "other", il
suffit d'écrire la commande:

	chmod o-rw fichier.txt

Ainsi,


loup% ls -l fichier.txt
-rwrxrwx---   1 stat  etudstat   314 Nov  4 10:47 fichier.txt


Maintenant, uniquement le propiétaire et les usagers du groupe etudstat peuvent lire, écrire et exécuter le fichier.


N.B. À l'ouverture d'un compte sur DMS, les permissions par défaut des fichiers et répertoires sont respectivement 
-rwxr-xr-x et drwxr-xr-x. Alors à vous de les modifier à votre guise et selon vos besoins. Mais attention! ne modifiez
pas les permissions qui appartiennent à "user" puisqu'il s'agit de vous, laissez-vous toujours toutes les permissions. 
Ainsi, vous éviterez de vous barrer, sans le vouloir, l'accès à votre compte!!!