Différences entre les versions de « La commande chmod »
(23 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
[[Catégorie : Commandes]] | [[Catégorie : Commandes]] | ||
+ | <!-- Permission, permission, Permissions, permissions, Accès, accès --> | ||
<pre> | <pre> | ||
chmod [options] <fichiers/répertoires> | chmod [options] <fichiers/répertoires> | ||
Ligne 12 : | Ligne 13 : | ||
== Description == | == Description == | ||
− | + | === Ensembles d'usagers et types d'accès === | |
− | |||
La commande reconnaît 4 ensembles d'usagers : | La commande reconnaît 4 ensembles d'usagers : | ||
− | * ''user'' (<tt>u</tt>), l'usager propriétaire; | + | * ''user'' (<tt>u</tt>), l'usager propriétaire (le créateur du fichier ou du répertoire); |
− | * ''group'' (<tt>g</tt>), le groupe de l'usager propriétaire; | + | * ''group'' (<tt>g</tt>), le groupe de l'usager propriétaire (groupe propriétaire); |
* ''other'' (<tt>o</tt>), tous les usagers, sauf l'usager propriétaire et les membres de son groupe; | * ''other'' (<tt>o</tt>), tous les usagers, sauf l'usager propriétaire et les membres de son groupe; | ||
− | * ''all'' (<tt>a</tt>), | + | * ''all'' (<tt>a</tt>), l'union des ensembles précédents. |
− | + | La commande permet 3 types d'accès aux fichiers (et répertoires) : | |
− | |||
− | La commande | ||
* ''read'' (<tt>r</tt>), lecture; | * ''read'' (<tt>r</tt>), lecture; | ||
Ligne 29 : | Ligne 27 : | ||
* ''execute'' (<tt>x</tt>), exécution. | * ''execute'' (<tt>x</tt>), exécution. | ||
− | Pour vérifier l'accès à un fichier, il suffit d'utiliser la commande [[Commandes_élémentaires#ls|<tt>ls</tt>]] : | + | Pour vérifier l'accès à un fichier ou à un répertoire, il suffit d'utiliser la commande [[Commandes_élémentaires#ls|<tt>ls</tt>]] : |
<pre> | <pre> | ||
− | ls -al <fichier> | + | ls -al <fichier/répertoire> |
</pre> | </pre> | ||
Par exemple, la commande pourrait vous retourner | Par exemple, la commande pourrait vous retourner | ||
<pre> | <pre> | ||
− | -rw-r--r--. 1 | + | -rw-r--r--. 1 USAGER etudmat 197 Dec 25 00:00 fichier |
</pre> | </pre> | ||
+ | On apprend ainsi que <tt>USAGER</tt> est l'usager propriétaire du fichier et <tt>etudmat</tt>, son groupe. L'information à l'extrême gauche est organisée comme ci-dessous : | ||
+ | [[Fichier:chmod.png]] | ||
− | + | Le caractère de gauche, <tt>d</tt>, n'apparaît que si l'objet considéré est un répertoire. Les 3 blocs qui suivent concernent, respectivement, l'accès de l'usager propriétaire, l'accès des membres du groupe propriétaire et l'accès des « autres ». Notons que l'absence de permission est signalée par un trait « - ». | |
− | + | Dans l'exemple précédent, on remarque que <tt>fichier</tt> n'est pas un répertoire et que <tt>USAGER</tt> a la permission de le lire et de le modifier, mais pas de l'exécuter. Les usagers du groupe <tt>etudmat</tt> et les « autres » peuvent seulement lire le fichier. Tous les nouveaux fichiers créés au DMS ont, par défaut, ces permissions. | |
− | < | ||
− | |||
+ | Les nouveaux répertoires affichent quant à eux les accès suivants : | ||
<pre> | <pre> | ||
− | - | + | drwxr-xr-x. 2 USAGER etudmat 4096 Dec 25 00:00 répertoire |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</pre> | </pre> | ||
− | + | === Modification des permissions === | |
+ | La commande <tt>chmod</tt> vous permet de modifier les accès à un fichier des différents ensembles d'usagers. Voici la syntaxe générale : | ||
<pre> | <pre> | ||
− | chmod [ugoa][+-=][rwx] | + | chmod [ugoa][+-=][rwx] <fichier/répertoire> |
</pre> | </pre> | ||
− | === Exemples === | + | ==== Exemples ==== |
− | |||
− | |||
<pre> | <pre> | ||
chmod a-wx fichier.tex | chmod a-wx fichier.tex | ||
</pre> | </pre> | ||
− | + | Retire à tous les usagers la possibilité de modifier (écrire) et d'exécuter <tt>fichier.tex</tt>. | |
− | |||
<pre> | <pre> | ||
chmod o+rw gaffe.txt | chmod o+rw gaffe.txt | ||
</pre> | </pre> | ||
− | + | Ajoute la permission aux usagers « autres » de lire et modifier <tt>gaffe.txt</tt> (ceci n'est '''pas''' conseillé!). | |
− | |||
<pre> | <pre> | ||
− | chmod u=r | + | chmod u=r final.txt |
</pre> | </pre> | ||
+ | L'usager propriétaire n'est autorisé qu'à lire le fichier <tt>final.txt</tt>. | ||
− | + | En bref, le symbole « <tt>=</tt> » sert à ''fixer'' le type d'accès d'un ensemble d'usagers alors que les symboles « <tt>+</tt> » et « <tt>-</tt> » servent, respectivement, à ''ajouter'' et à ''retirer'' un accès. | |
− | + | ==== Syntaxe chiffrée ==== | |
− | |||
− | === Syntaxe chiffrée === | ||
− | |||
− | |||
+ | La syntaxe chiffrée peut être utilisée pour régler d'un trait l'accès de tous les ensembles d'usagers. Par exemple, la commande | ||
+ | <pre> | ||
+ | chmod 664 fichier.txt | ||
+ | </pre> | ||
+ | est équivalente à | ||
<pre> | <pre> | ||
− | chmod ug=rw | + | chmod ug=rw fichier.txt |
+ | chmod o=r fichier.txt | ||
</pre> | </pre> | ||
− | + | Le premier chiffre de la valeur numérique fixe l'accès de l'usager propriétaire, le deuxième fixe l'accès du groupe propriétaire et le dernier fixe l'accès des « autres ». Chaque chiffre est la somme d'un ou plusieurs chiffres correspondant à des accès différents : | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
* <tt>4</tt> : lecture | * <tt>4</tt> : lecture | ||
Ligne 111 : | Ligne 95 : | ||
=== Articles connexes === | === Articles connexes === | ||
− | |||
*[[Commandes_élémentaires|Commandes élémentaires]] | *[[Commandes_élémentaires|Commandes élémentaires]] | ||
*[[Commandes_élémentaires#chgrp|<tt>chgrp</tt>]] | *[[Commandes_élémentaires#chgrp|<tt>chgrp</tt>]] | ||
− | *[[ | + | *[[Commandes_élémentaires#chown|<tt>chown</tt>]] |
Version actuelle datée du 19 juin 2013 à 10:03
chmod [options] <fichiers/répertoires>
La commande chmod permet de configurer l'accès aux fichiers et aux répertoires.
Pour une liste exhaustive des options et des fonctionnalités, consultez le manuel de la commande (man chmod).
Description
Ensembles d'usagers et types d'accès
La commande reconnaît 4 ensembles d'usagers :
- user (u), l'usager propriétaire (le créateur du fichier ou du répertoire);
- group (g), le groupe de l'usager propriétaire (groupe propriétaire);
- other (o), tous les usagers, sauf l'usager propriétaire et les membres de son groupe;
- all (a), l'union des ensembles précédents.
La commande permet 3 types d'accès aux fichiers (et répertoires) :
- read (r), lecture;
- write (w), écriture;
- execute (x), exécution.
Pour vérifier l'accès à un fichier ou à un répertoire, il suffit d'utiliser la commande ls :
ls -al <fichier/répertoire>
Par exemple, la commande pourrait vous retourner
-rw-r--r--. 1 USAGER etudmat 197 Dec 25 00:00 fichier
On apprend ainsi que USAGER est l'usager propriétaire du fichier et etudmat, son groupe. L'information à l'extrême gauche est organisée comme ci-dessous :
Le caractère de gauche, d, n'apparaît que si l'objet considéré est un répertoire. Les 3 blocs qui suivent concernent, respectivement, l'accès de l'usager propriétaire, l'accès des membres du groupe propriétaire et l'accès des « autres ». Notons que l'absence de permission est signalée par un trait « - ».
Dans l'exemple précédent, on remarque que fichier n'est pas un répertoire et que USAGER a la permission de le lire et de le modifier, mais pas de l'exécuter. Les usagers du groupe etudmat et les « autres » peuvent seulement lire le fichier. Tous les nouveaux fichiers créés au DMS ont, par défaut, ces permissions.
Les nouveaux répertoires affichent quant à eux les accès suivants :
drwxr-xr-x. 2 USAGER etudmat 4096 Dec 25 00:00 répertoire
Modification des permissions
La commande chmod vous permet de modifier les accès à un fichier des différents ensembles d'usagers. Voici la syntaxe générale :
chmod [ugoa][+-=][rwx] <fichier/répertoire>
Exemples
chmod a-wx fichier.tex
Retire à tous les usagers la possibilité de modifier (écrire) et d'exécuter fichier.tex.
chmod o+rw gaffe.txt
Ajoute la permission aux usagers « autres » de lire et modifier gaffe.txt (ceci n'est pas conseillé!).
chmod u=r final.txt
L'usager propriétaire n'est autorisé qu'à lire le fichier final.txt.
En bref, le symbole « = » sert à fixer le type d'accès d'un ensemble d'usagers alors que les symboles « + » et « - » servent, respectivement, à ajouter et à retirer un accès.
Syntaxe chiffrée
La syntaxe chiffrée peut être utilisée pour régler d'un trait l'accès de tous les ensembles d'usagers. Par exemple, la commande
chmod 664 fichier.txt
est équivalente à
chmod ug=rw fichier.txt chmod o=r fichier.txt
Le premier chiffre de la valeur numérique fixe l'accès de l'usager propriétaire, le deuxième fixe l'accès du groupe propriétaire et le dernier fixe l'accès des « autres ». Chaque chiffre est la somme d'un ou plusieurs chiffres correspondant à des accès différents :
- 4 : lecture
- 2 : écriture
- 1 : exécution
- 0 : aucun