Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:chown [06/09/2011 03:04] martin_mtl |
doc:systeme:chown [16/07/2014 15:49] smolski [chown] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== La commande chown ====== | + | ====== chown ====== |
- | Préalable : Il faut connaître la signification des droits. Voir à ce sujet : [[A savoir]] et [[CHMOD]] | + | * Objet : chown |
+ | * Niveau requis : {{tag>débutant}} | ||
+ | * Commentaires : //Gérer les droits à l'accès des fichiers. // | ||
+ | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) et il faut aussi connaître la signification des droits. Voir à ce sujet : [[:doc:systeme:droits-unix | Les droits unix en détail]]. | ||
+ | * Suivi : {{tag>à-compléter}} | ||
+ | * Mise à jour par [[user>smolski]] le 14-01-2014 | ||
+ | * Testé par [[user>smolski]] le 14-01-2014 | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=1046 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
- | La commande chown permet de changer les droits d'accès d'un fichier. | + | **Nota :** |
- | Un utilisateur peut, bien entendu, facilement modifier les droits d'un fichier ou d'un répertoire qui lui appartient. Dans tous les autres cas, seul l'administrateur du système, autrement dit root, peut modifier le propriétaire d'un fichier ou d'un répertoire. Cette mesure de sécurité protège l'intégrité du système. | + | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! |
- | + | ||
- | Pour utiliser la commande chown il faut donc au préalable être l'utilisateur root. | + | |
+ | ===== Introduction ===== | ||
+ | La commande **chown** permet de modifier le propriétaire et le groupe d'un fichier. \\ | ||
+ | Seul [[doc:systeme:superutilisateur | l'utilisateur root]] peut changer le propriétaire d'un fichier. \\ | ||
+ | Un utilisateur, s'il est propriétaire du fichier et s'il fait partie de la liste des utilisateurs du groupe ciblé, pourra utiliser ''chown'' pour modifier le groupe auquel appartient ce fichier. | ||
+ | <note>Même si un fichier est la propriété d'un utilisateur ou même si cet utilisateur fait partie du même groupe que celui du fichier, les types d'accès autorisés seront définis par l'état des bits de comportement (''rwx'') du fichier.</note> | ||
===== Syntaxe ===== | ===== Syntaxe ===== | ||
- | # chown nouveau_propriétaire:nouveau_groupe fichier | + | <code>chown nouveau_propriétaire:nouveau_groupe fichier</code> |
+ | |||
+ | La commande ''chown'' peut être appliquée en une seule commande sur plusieurs fichiers et répertoires : | ||
+ | <code root>chown -R nouveau_propriétaire:nouveau_groupe repertoire1 chemin/repertoire2 chemin/fichier1 fichier2</code> | ||
+ | |||
+ | La commande ''chown'' peut être appliquée récursivement sur le contenu d'un répertoire : \\ | ||
+ | Dans ce cas, la commande s'appliquera donc sur tous les fichiers et les sous-répertoires contenus dans ce répertoire, car un répertoire est aussi un fichier. | ||
+ | <code root>chown -R nouveau_propriétaire:nouveau_groupe repertoire1</code> | ||
+ | |||
===== Exemples ===== | ===== Exemples ===== | ||
Ligne 17: | Ligne 35: | ||
==== Avec la commande ls ==== | ==== Avec la commande ls ==== | ||
- | Commençons tout d'abord par utiliser la commande [[ls]] d'abord pour identifier quel est le propriétaire d'un fichier donné, ici agenda.text : | + | Commençons tout d'abord par utiliser la commande [[ls]] avec l'option ''-l'' afin de visualiser le nom de propriétaire et de groupe d'un fichier donné, ici //agenda.text// : |
- | $ ls -l agenda.txt | + | <code user>ls -l agenda.txt</code> |
- | -rw-r—r-- 1 peter peter agenda.txt | + | <file bash retour de la commande ci-dessus>-rw-r—r-- 1 peter staff agenda.txt</file> |
- | + | Le propriétaire du fichier //agenda.txt// est ''peter'' et il est accessible au groupe ''staff''. | |
- | On constate ici que le propriétaire du fichier agenda est peter (il peut donc le lire et le modifier) et qu'il appartient au groupe peter. Les autres utilisateurs peuvent seulement le lire. | + | |
- | + | ||
- | + | ||
- | En octale, cela s'écrit : **644** (voir [[CHMOD]]-Méthode 2 - les Octales) | + | |
- | + | ||
- | Nous voulons maintenant modifier le groupe auquel appartient le fichier pour qu'il appartienne dorénavant au groupe travail. | + | |
==== Utilisation de chown par root : ==== | ==== Utilisation de chown par root : ==== | ||
- | + | Nous voulons maintenant modifier l'accès à ce fichier au profit du groupe ''travail''. | |
- | # chown peter:travail agenda.txt | + | <code root>chown peter:travail agenda.txt</code> |
On vérifie : | On vérifie : | ||
- | # ls -l | + | <code user>ls -l agenda.txt</code> |
- | -rw-r--r-- 1 peter travail agenda.txt | + | <file bash retour de la commande ci-dessus>-rw-r--r-- 1 peter travail agenda.txt</file> |
- | + | Le groupe ''travail'' pourra désormais accéder au fichier ''agenda.txt''. | |
- | On constate bien que le fichier appartient au groupe travail. | + | |
- | + | ||
- | Si on décide maintenant de "donner" ce fichier à l'utilisateur prof, on écrira : | + | |
- | + | ||
- | # chown prof agenda.txt | + | |
- | Une vérification avec la commande ls montrerait que le propriétaire de agenda.txt est maintenant prof et que le fichier appartient au group travail. | + | Si on décide maintenant modifier le nom de propriétaire du fichier ''agenda.txt'' au profit de l'utilisateur ''prof'', on écrira : |
+ | <code root>chown prof agenda.txt</code> | ||
+ | Une vérification avec la commande ls montrerait que le propriétaire de agenda.txt est maintenant **prof** et que le fichier appartient toujours au groupe **travail**. | ||
- | ===== A voir : ===== | + | Enfin, nous pouvons mettre ce fichier à la propriété de machin et dans son groupe primaire (celui qui lui a été attribué à sa création) ainsi : |
+ | <code root> | ||
+ | chown machin: agenda.txt</code> | ||
- | [[CHMOD]] pour gérer les droits dans le détail pour (u), g) et (o)... | + | Si ce répertoire doit appartenir à un groupe différent de son groupe primaire, il faut alors bien l'indiquer après les deux points, par exemple : |
- | Genre : | + | <code root> |
- | # chmod 660 suse.txt | + | chown machin:prof agenda.txt</code> |
- | Voilà pour cette commande ! |