<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Manipulation des attributs de fichiers</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.0"><link rel="home" href="index.html" title="Manuel de référence"><link rel="up" href="cmdline.html" title="Chapitre 3. Introduction à la ligne de commande"><link rel="previous" href="ch03s01.html" title="Utilitaires de manipulation de fichiers"><link rel="next" href="glob-regex.html" title="Motifs d'englobement du shell"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Manipulation des attributs de fichiers</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s01.html">Précédent</a> </td><th width="60%" align="center">Chapitre 3. Introduction à la ligne de commande</th><td width="20%" align="right"> <a accesskey="n" href="glob-regex.html">Suivant</a></td></tr></table><hr></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="cmdline-attr"></a>Manipulation des attributs de fichiers</h2></div></div><div></div></div><p><a name="BId-cmdline-pa40"></a> <a class="indexterm" name="BId-cmdline-it24"></a> <a class="indexterm" name="BId-cmdline-it25"></a>La série de commandes présentée ici est utilisée pour changer le propriétaire ou groupe propriétaire <a class="indexterm" name="BId-cmdline-it26"></a> d'un fichier ou ses droits d'accès. Les différents droits d'accès sont présentés dans le chapitre « <span class="quote">Concepts de base des systèmes UNIX</span> ». </p><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a name="id2536837"></a>chown, chgrp : changer l'utilisateur et le groupe propriétaire d'un ou plusieurs fichiers</h3></div></div><div></div></div><p><a name="BId-cmdline-pa41"></a> <a class="indexterm" name="BId-cmdline-it27"></a> <a class="indexterm" name="BId-cmdline-it28"></a> La syntaxe de la commande <span><b class="command">chown</b></span> est la suivante : </p><a name="BId-cmdline-sc7"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen"> chown [options] <user[:group]> <file|directory> [file|directory...]</pre></td></tr></table><p><a name="BId-cmdline-pa42"></a> Entre autres options, vous trouverez celles-ci : </p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-cmdline-pa43"></a><tt class="option">-R</tt> : récursif. Change le propriétaire de tous les fichiers et sous-répertoires d'un répertoire donné ; </p></li><li><p><a name="BId-cmdline-pa44"></a><tt class="option">-v</tt> : mode verbeux. Décrit toutes les actions effectuées par <span><b class="command">chown</b></span> ; indique quels fichiers ont changé de propriétaire à la suite de la commande ainsi que ceux qui demeurent inchangés ; </p></li><li><p><a name="BId-cmdline-pa45"></a><tt class="option">-c</tt> : comme <tt class="option">-v</tt>, mais ne mentionne que les fichiers pour lesquels il y a eu un changement. </p></li></ul></div><p><a name="BId-cmdline-pa46"></a>Quelques exemples : </p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-cmdline-pa47"></a><span><b class="command">chown nobody /shared/book.tex</b></span> : change le propriétaire du fichier <tt class="filename">/shared/book.tex</tt> au profit de <b class="userinput"><tt>nobody</tt></b> ; </p></li><li><p><a name="BId-cmdline-pa48"></a><span><b class="command">chown -Rc reine:musique *.mid concerts/</b></span> : donne la propriété de tous les fichiers dans le répertoire courant se terminant par <tt class="literal">.mid</tt> et de tous les fichiers et sous-répertoires du répertoire <tt class="filename">concerts/</tt> à <b class="userinput"><tt>reine</tt></b> et au groupe <b class="userinput"><tt>musique</tt></b>. Cette commande ne mentionne que les fichiers affectés par la commande. </p></li></ul></div><p><a name="BId-cmdline-pa49"></a> <a class="indexterm" name="BId-cmdline-it29"></a> <a class="indexterm" name="BId-cmdline-it30"></a>La commande <span><b class="command">chgrp</b></span> (<span class="foreignphrase"><i class="foreignphrase">CHange GRouP</i></span>) ne vous laisse changer que le groupe propriétaire d'un fichier ou d'un groupe de fichiers. Sa syntaxe est très semblable à celle de la commande <span><b class="command">chown</b></span> : </p><a name="BId-cmdline-sc8"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen"> chgrp [options] <group> <file|directory> [file|directory...]</pre></td></tr></table><p><a name="BIdNEW-cmdline-pa125"></a>Les options de cette commande sont les mêmes que pour <span><b class="command">chown</b></span>, et elle est utilisée de façon très similaire. Ainsi, la commande :</p><a name="BId-cmdline-sc9"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">chgrp disk /dev/hd*</pre></td></tr></table><p><a name="BIdNEW-cmdline-pa126"></a>attribue au groupe <b class="userinput"><tt>disk</tt></b> tous les fichiers du répertoire <tt class="filename">/dev</tt> dont le nom commence par <tt class="filename">hd</tt>.</p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a name="id2537203"></a>chmod : changer les permissions sur des fichiers et des répertoires</h3></div></div><div></div></div><p><a name="BId-cmdline-pa50"></a> <a class="indexterm" name="BId-cmdline-it31"></a><a class="indexterm" name="BId-cmdline-it32"></a>La commande <span><b class="command">chmod</b></span> a une syntaxe bien particulière. Sa syntaxe générale est :</p><a name="BId-cmdline-sc10"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen"> chmod [options] <change mode> <file|directory> [file|directory...]</pre></td></tr></table><p><a name="BIdNEW-cmdline-pa127"></a>mais ce sont les différentes formes que peut prendre le changement de mode qui la rendront plus spécifique. Ceci peut se produire de deux façons :</p><div class="orderedlist"><ol type="1"><li><p><a name="BId-cmdline-pa51"></a>en octal. Les droits d'accès de l'utilisateur propriétaire correspondent alors à des chiffres de la forme <tt class="literal"><x>00</tt>, où <tt class="option"><x></tt> correspond au droit assigné : 4 pour lecture, 2 pour écriture, 1 pour exécution. De même, les droits d'accès du groupe propriétaire sont de la forme <tt class="literal"><x>0</tt> et ceux des « <span class="quote">autres</span> » sont de la forme <tt class="literal">x</tt>. Pour obtenir le chiffre correct, il suffira d'additionner les droits d'accès assignés. Ainsi, les permissions <tt class="literal">rwxr-xr--</tt> correspondent à 400+200+100 (droits d'accès de l'utilisateur propriétaire, <tt class="literal">rwx</tt>) +40+10 (droits d'accès du groupe, <tt class="literal">r-x</tt>) +4 (droits d'accès des autres, <tt class="literal">r--</tt>) = 754. Les droits d'accès sont ainsi exprimés de manière absolue : les droits d'accès précédents sont remplacés de façon inconditionnelle ; </p></li><li><p><a name="BId-cmdline-pa52"></a>à l'aide de certaines expressions. Les droits d'accès sont ici indiqués par une suite d'expressions séparées par des virgules, une expression étant de la forme <tt class="option">[catégorie]<+|-|=><droits d'accès></tt>. </p></li></ol></div><p><a name="BId-cmdline-pa53"></a>La catégorie peut être une combinaison de :</p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-cmdline-pa54"></a><tt class="literal">u</tt> (<span class="foreignphrase"><i class="foreignphrase">User</i></span>, soit utilisateur, permission pour propriétaire) ; </p></li><li><p><a name="BId-cmdline-pa55"></a><tt class="literal">g</tt> (<span class="foreignphrase"><i class="foreignphrase">Group</i></span>, soit groupe, permission pour le groupe propriétaire) ou ; </p></li><li><p><a name="BId-cmdline-pa56"></a><tt class="literal">o</tt> (<span class="foreignphrase"><i class="foreignphrase">Others</i></span>, permission pour les « <span class="quote">autres</span> »). </p></li></ul></div><p><a name="BId-cmdline-pa57"></a>Si aucune catégorie n'est spécifiée, le changement s'applique à toutes les catégories. Un <tt class="literal">+</tt> appose un droit d'accès, un <tt class="literal">-</tt> le retire et un <tt class="literal">=</tt> établit la permission. Pour finir, les droits d'accès sont définis par une ou plusieurs des lettres suivantes : </p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-cmdline-pa58"></a><tt class="literal">r</tt> (<span class="foreignphrase"><i class="foreignphrase">Read</i></span>, soit lecture) ; </p></li><li><p><a name="BId-cmdline-pa59"></a><tt class="literal">w</tt> (<span class="foreignphrase"><i class="foreignphrase">Write</i></span>, soit écriture) ; </p></li><li><p><a name="BId-cmdline-pa60"></a><tt class="literal">x</tt> (<span class="foreignphrase"><i class="foreignphrase">eXecute</i></span>, soit exécution). </p></li></ul></div><p><a name="BId-cmdline-pa61"></a> Les options principales sont très similaires à celles de <span><b class="command">chown</b></span> ou <span><b class="command">chgrp</b></span> : </p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-cmdline-pa62"></a><tt class="option">-R</tt> : change les droits d'accès récursivement ; </p></li><li><p><a name="BId-cmdline-pa63"></a><tt class="option">-v</tt> : mode verbeux. Il décrit les actions effectuées pour chaque fichier ; </p></li><li><p><a name="BId-cmdline-pa64"></a><tt class="option">-c</tt> : comme <tt class="option">-v</tt>, mais ne mentionne que les fichiers dont les droits d'accès ont changé. </p></li></ul></div><p><a name="BId-cmdline-pa65"></a>Exemples : </p><div class="itemizedlist"><ul type="disc"><li><p><a name="BId-cmdline-pa66"></a><span><b class="command">chmod -R o-w /shared/docs</b></span> : enlève de façon récursive le droit d'écriture aux « <span class="quote">autres</span> » sur tous les fichiers et sous-répertoires du répertoire <tt class="filename">/shared/docs/</tt> ; </p></li><li><p><a name="BId-cmdline-pa67"></a><span><b class="command">chmod -R og-w,o-x prive/</b></span> : enlève de façon récursive le droit d'écriture pour le groupe et les autres sur tout le répertoire <tt class="filename">prive/</tt>, et retire le droit d'exécution pour les autres ; </p></li><li><p><a name="BId-cmdline-pa68"></a><span><b class="command">chmod -c 644 divers/fichier*</b></span> : change les droits d'accès de tous les fichiers du répertoire <tt class="filename">divers/</tt> dont les noms commencent par <tt class="filename">fichiers</tt> en <tt class="literal">rw-r--r--</tt> (droit de lecture pour tout le monde et droit d'écriture pour le propriétaire du fichier seulement). Cette commande ne mentionne que les fichiers affectés par l'opération. </p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s01.html">Précédent</a> </td><td width="20%" align="center"><a accesskey="u" href="cmdline.html">Niveau supérieur</a></td><td width="40%" align="right"> <a accesskey="n" href="glob-regex.html">Suivant</a></td></tr><tr><td width="40%" align="left" valign="top">Utilitaires de manipulation de fichiers </td><td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td><td width="40%" align="right" valign="top"> Motifs d'englobement du shell</td></tr></table></div></body></html>