Abréviation de changer de propriétaire , la commande Chown est un utilitaire de ligne de commande utilisé pour modifier la propriété de l'utilisateur ou du groupe d'un fichier ou d'un répertoire et même des liens. La philosophie Linux est telle que chaque fichier ou répertoire appartient à un utilisateur ou à un groupe spécifique avec certains droits d'accès.
A l'aide de différents exemples, nous allons essayer de voir les différents cas d'utilisation de la commande chown. La commande Chown utilise une syntaxe assez simple et directe.
$ chown OPTIONS UTILISATEUR :GROUPE fichier(s)
Détaillons brièvement les paramètres :
L'attribut USER fait référence au nom d'utilisateur de l'utilisateur qui sera propriétaire du fichier. Vous pouvez spécifier le nom d'utilisateur ou l'UID ( Identifiant d'utilisateur). Pendant ce temps, le GROUPE L'option indique le nom du nouveau groupe que le fichier acquerra après l'exécution de la commande. L'option file représente un fichier normal ou un répertoire ou même un lien symbolique. Ce sont les trois entités dont les autorisations peuvent être modifiées.
Quelques points à noter :
1) Lorsque l'option USER est spécifiée seule, la propriété du fichier/répertoire passe à celle de l'utilisateur spécifié tandis que la propriété du groupe reste inchangée. Voici un exemple :
$ chown john file1.txt
Dans la commande ci-dessus, la propriété de l'utilisateur du fichier file1.txt passe de l'utilisateur actuel à l'utilisateur john.
2) Si l'option USER est précédée de deux-points complets, c'est-à-dire USER :et que le nom du groupe n'est pas fourni, l'utilisateur s'approprie le fichier, mais la propriété du groupe du fichier passe au groupe de connexion de l'utilisateur. Par exemple :
$ chown john: file1.txt
Dans cet exemple, l'utilisateur john devient propriétaire du fichier file1.txt, mais la propriété du groupe du fichier passe au groupe de connexion de john.
3) Lorsque les options d'utilisateur et de groupe sont spécifiées séparées par deux-points, c'est-à-dire USER:GROUP - sans aucun espace, le fichier prend possession du nouvel utilisateur et du groupe comme spécifié
$ chown john:john file1.txt
Dans l'exemple ci-dessus, le fichier prend la propriété de l'utilisateur et du groupe de l'utilisateur john.
4) Lorsque l'option USER est omise et que l'option group est précédée des deux-points complets :GROUP, seule la propriété du groupe du fichier change.
Comment afficher les autorisations de fichiers
Pour afficher les autorisations de fichiers, utilisez simplement la commande ls -l suivie du nom du fichier
$ ls -l nom de fichier
Par exemple :
$ ls -l file1.txt
À partir de la sortie, nous pouvons voir que le fichier appartient à l'utilisateur linuxtechi qui appartient au groupe linuxtechi dans les 3e et 4e colonnes respectivement.
Comment changer le propriétaire du fichier avec la commande chown
Avant de modifier les autorisations, appelez toujours sudo si vous ne travaillez pas en tant qu'utilisateur root. Cela vous donne des privilèges élevés pour modifier la propriété d'un utilisateur et d'un groupe d'un fichier.
Pour modifier la propriété du fichier, utilisez la syntaxe :
$ sudo chown nom de fichier utilisateur
Par exemple,
$ sudo chown james file1.txt
À partir de la sortie, vous pouvez clairement voir que la propriété du fichier est passée de linuxtechi à l'utilisateur james.
Alternativement, au lieu d'utiliser le nom d'utilisateur, vous pouvez transmettre l'UID de l'utilisateur à la place. Pour obtenir l'UID, consultez le fichier /etc/passwd.
$ cat /etc/passwd | grep username
Dans l'exemple ci-dessous, nous pouvons voir que l'UID de l'utilisateur linuxtechi est 1002
Pour redonner la propriété du fichier à l'utilisateur linuxtechi, nous allons exécuter la commande :
$ sudo chown 1002 file1.txt
Comment changer le propriétaire du groupe avec la commande chown
Comme indiqué précédemment, pour changer le propriétaire du groupe d'un fichier, omettez l'utilisateur et préfixez simplement le nom du groupe avec deux-points complets.
$ sudo chown :fichier de groupe
Par exemple, pour changer le propriétaire du groupe de file1.txt de linuxtechi à docker, nous avons exécuté la commande :
$ sudo chown :docker file1.txt
Comment changer à la fois le propriétaire du fichier et le propriétaire du groupe d'un fichier
Si vous souhaitez modifier à la fois le propriétaire et le groupe auquel appartient un fichier, spécifiez les options d'utilisateur et de groupe séparées par deux-points complets, comme indiqué dans la syntaxe ci-dessous. Assurez-vous qu'il n'y a pas d'espace entre les options et les deux-points.
$ sudo chown user:group filename
Par exemple, la commande suivante modifie la propriété du fichier file1.txt en l'utilisateur james et le groupe redis comme vérifié à l'aide de la commande ls.
$ sudo chown james:redis file1.txt
Comment modifier de manière récursive la propriété d'un fichier
Lors de l'application des autorisations aux répertoires, vous souhaiterez peut-être appliquer les modifications de manière récursive, c'est-à-dire faire en sorte que les modifications de propriété descendent et s'appliquent aux fichiers et aux sous-répertoires. Pour ce faire, utilisez l'option récursive -R ou la directive –recursive.
$ sudo chown -R utilisateur:répertoire du groupe
Par exemple, la commande ci-dessous attribue tous les fichiers et dossiers de la propriété du répertoire /var/www au groupe www-data.
$ sudo chown -R :www-data /var/www
L'exemple ci-dessous attribue la propriété des rapports de répertoire aux côtés de tous les fichiers et dossiers du répertoire à l'utilisateur linuxtechi.
$ sudo chown -R linuxtechi reports
Comment changer de propriétaire à l'aide d'un fichier de référence
Enfin, il existe un moyen astucieux que vous pouvez utiliser pour changer la propriété d'un fichier, et c'est en utilisant un fichier de référence. À l'aide de la commande chown, vous pouvez modifier la propriété de l'utilisateur et du groupe d'un fichier en utilisant un autre fichier comme point de référence.
La syntaxe est illustrée ci-dessous :
$ chown –reference=ref_file fichier
Supposons que vous souhaitiez attribuer la propriété d'utilisateur et de groupe de file1.txt à un autre fichier file2.txt. Comment procéderiez-vous ? Ceci est illustré dans la commande ci-dessous.
$ chown --reference=file1.txt file2.txt
La sortie ci-dessus confirme que file2.txt hérite de la propriété de l'utilisateur et du groupe de file1.txt. Dans la commande, file1.txt est le fichier de référence.
Conclusion
La commande Chown est un outil puissant utilisé pour gérer la propriété des fichiers et des répertoires. Pour plus d'informations, consultez les pages de manuel chown.
$ homme chown
Lire aussi :Commande Linux Zip et Unzip avec exemples