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 | ||
doc:systeme:chown [06/09/2011 02:49] martin_mtl |
doc:systeme:chown [15/05/2023 17:56] lagrenouille [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 avisé}} | ||
+ | * 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>à-placer}} | ||
+ | * 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. | ||
- | 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. | ||
- | |||
- | 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 ''-R '' 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 33: | ||
==== 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 suse.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 suse.txt | + | <code user>ls -l agenda.txt</code> |
- | -rw-r—r-- 1 peter peter suse.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 suse est peter (il peut donc le lire et le modifier). Les autres utilisateurs peuvent seulement le lire | + | ==== Utilisation de chown par root : ==== |
+ | Nous voulons maintenant modifier l'accès à ce fichier au profit du groupe ''travail''. | ||
+ | <code root>chown peter:travail agenda.txt</code> | ||
+ | On vérifie : | ||
+ | <code user>ls -l agenda.txt</code> | ||
+ | <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''. | ||
+ | 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> | ||
- | En octale, cela s'écrit : **644** (voir [[CHMOD]]-Méthode 2 - les Octales) | + | 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**. |
- | + | ||
- | ==== Utilisation de chown par root : ==== | + | |
- | + | ||
- | # chown peter:suse suse.txt | + | |
- | On vérifie : | + | |
- | # ls -l | + | |
- | -rw-r--r-- 1 peter suse suse.txt | + | |
- | suse est devenue (g). | + | |
- | On écrit : | + | |
- | # chown suse suse.txt | + | |
- | suse est devenue (u) en restant (g) aussi. | + | |
- | Faites le **ls -l** pour vérifier... | + | |
- | ===== 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 ! |