Différences entre les versions de « La commande chmod »

Ligne 12 : Ligne 12 :
 
== Description ==
 
== Description ==
  
Avec <tt>chmod</tt>, il est possible de déterminer quels usagers peuvent accéder à vos fichiers et avec quelles permissions.
+
=== Ensembles d'usagers et type d'accès ===
 
 
 
La commande reconnaît 4 ensembles d'usagers&nbsp;:
 
La commande reconnaît 4 ensembles d'usagers&nbsp;:
  
Ligne 19 : Ligne 18 :
 
* ''group'' (<tt>g</tt>), le groupe de l'usager propriétaire;
 
* ''group'' (<tt>g</tt>), le groupe de l'usager 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>), tous les usagers, sans exception.
+
* ''all'' (<tt>a</tt>), l'union des ensembles précédents.
  
 
La commande permet 3 types d'accès aux fichiers&nbsp;:
 
La commande permet 3 types d'accès aux fichiers&nbsp;:
Ligne 36 : Ligne 35 :
 
</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&nbsp;:
 
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&nbsp;:
[[Fichier:chmod.png]]  
+
[[Fichier:chmod.png]]
<tt>USAGER</tt> a donc la permission de lire et d'écrire, mais pas exécuter, le fichier. Les usagers du groupe <tt>etudmat</tt> et les &laquo;&nbsp;autres&nbsp;&raquo; peuvent seulement lire le fichier. Notons que l'absence de permission est signalée par un trait &laquo;&nbsp;-&nbsp;&raquo;.
+
 
 +
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 &laquo;&nbsp;autres&nbsp;&raquo;. Notons que l'absence de permission est signalée par un trait &laquo;&nbsp;-&nbsp;&raquo;.
 +
 
 +
Dans l'exemple précédent, <tt>USAGER</tt> a donc la permission de lire et d'écrire, mais pas d'exécuter, le fichier. Les usagers du groupe <tt>etudmat</tt> et les &laquo;&nbsp;autres&nbsp;&raquo; peuvent seulement lire le fichier.
  
Les nouveaux fichiers créés au DMS auront le niveau d'accès décrit dans l'exemple précédent. Les nouveaux répertoires affichent quant à eux les accès suivants&nbsp;:
+
Les nouveaux fichiers créés aux DMS ont, par défaut, les permissions de l'exemple. Les nouveaux répertoires affichent quant à eux les accès suivants&nbsp;:
 
<pre>
 
<pre>
 
drwxr-xr-x.  2 USAGER etudmat  4096 Dec 25 00:00 répertoire
 
drwxr-xr-x.  2 USAGER etudmat  4096 Dec 25 00:00 répertoire
 
</pre>
 
</pre>
  
Pour modifier l'accès à un fichier ou un répertoire, il faut utiliser la commande <tt>chmod</tt>&nbsp;:
+
=== 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&nbsp;:
 
<pre>
 
<pre>
 
chmod [ugoa][+-=][rwx] <fichier/répertoire>
 
chmod [ugoa][+-=][rwx] <fichier/répertoire>
 
</pre>
 
</pre>
  
=== Exemples ===
+
==== Exemples ====
  
 
<pre>
 
<pre>
Ligne 70 : Ligne 74 :
 
=== Syntaxe chiffrée ===
 
=== Syntaxe chiffrée ===
  
Il existe une autre syntaxe de <tt>chmod</tt> utilisant une valeur numérique pour régler l'accès. Par exemple,
+
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>
 
<pre>
 
chmod ug=rw toto.txt
 
chmod ug=rw toto.txt
 
</pre>
 
</pre>
est équivalent à  
+
est équivalente à  
 
<pre>
 
<pre>
 
chmod 660 toto.txt
 
chmod 660 toto.txt

Version du 19 juin 2013 à 10:13

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 type 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;
  • 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 :

  • 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 : Chmod.png

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, USAGER a donc la permission de lire et d'écrire, mais pas d'exécuter, le fichier. Les usagers du groupe etudmat et les « autres » peuvent seulement lire le fichier.

Les nouveaux fichiers créés aux DMS ont, par défaut, les permissions de l'exemple. 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 type d'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 ug=rw toto.txt

est équivalente à

chmod 660 toto.txt

Cette syntaxe 'chiffrée ne peut servir qu'à fixer les d'accès de tous les ensembles d'usagers d'un seul trait : il n'est pas possible de l'utiliser pour ajouter ou retirer un accès à un niveau. Le premier chiffre donne les accès de l'usager, le deuxième les accès du groupe et, le troisième, les accès des « autres ». La valeur de 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

Voir aussi

Articles connexes


La dernière modification de cette page a été faite le 19 juin 2013 à 10:13.