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 [22/09/2013 11:15] 127.0.0.1 modification externe |
doc:systeme:chown [23/01/2014 05:43] MicP [Introduction] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== chown ====== | ====== chown ====== | ||
- | Préalable : Il faut connaître la signification des droits. Voir à ce sujet : [[commande: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 smolski 14-01-2014 | ||
+ | * Testé par <...> le <...> FIXME | ||
+ | * 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 appartiens 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''. | |
- | <code bash> | + | <code root>chown peter:travail agenda.txt</code> |
- | chown peter:travail agenda.txt</code> | + | |
On vérifie : | On vérifie : | ||
- | <code bash> | + | <code user>ls -l agenda.txt</code> |
- | ls -l | + | <file bash retour de la commande ci-dessus>-rw-r--r-- 1 peter travail agenda.txt</file> |
- | -rw-r--r-- 1 peter travail agenda.txt</code> | + | 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 : | + | |
- | <code bash> | + | |
- | chown prof agenda.txt</code> | + | |
+ | 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**. | 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**. | ||
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 : | 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 bash> | + | <code root> |
chown machin: agenda.txt</code> | chown machin: agenda.txt</code> | ||
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 : | 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 : | ||
- | <code bash> | + | <code root> |
chown machin:prof agenda.txt</code> | chown machin:prof agenda.txt</code> | ||
- | |||
- | ===== A voir : ===== | ||
- | |||
- | [[CHMOD]] pour gérer les droits dans le détail pour (u), g) et (o)... | ||