Bref : Dans ce guide du débutant, nous aborderons quelques exemples pratiques de la commande chown. Après avoir suivi ce guide, les utilisateurs seront en mesure de gérer efficacement la propriété des fichiers sous Linux.
Sous Linux, tout est un fichier, ce qui signifie que toutes les ressources d’entrée/sortie, telles que les fichiers, les répertoires, les lecteurs de disque, les imprimantes, etc. sont exposées sous forme de fichiers via l’espace de noms du système de fichiers. En plus de cela, il existe une propriété associée à chaque fichier sous Linux.
La propriété est représentée par deux entités – utilisateur et groupe. La combinaison des autorisations d’accès et de la propriété permet à Linux d’implémenter un mécanisme de contrôle d’accès de manière efficace.
Dans ce guide, nous allons découvrir les commande chown. Comme son nom l’indique, le commande chown est utilisé pour changer la propriété des fichiers. Après avoir suivi ce guide, les débutants pourront utiliser le commande chown efficacement tout en travaillant avec des systèmes Linux.
Syntaxe de la commande chown
La syntaxe de la commande chown est comme suit:
$ chown [OPTION]... [OWNER][:[GROUP]] [FILE-1] [FILE-2]...[FILE-N]
Comprenons maintenant l’utilisation de commande chown avec quelques exemples pratiques sous Linux.
1. Comment trouver la propriété du fichier
Le moyen le plus simple de trouver le propriétaire du fichier consiste à utiliser la commande ls, qui répertorie l’utilisateur et le groupe du fichier.
$ touch file-1.txt $ ls -l file-1.txt
Dans la sortie ci-dessus, nous pouvons voir que le fichier appartient au tecmint utilisateur et groupe. Ces informations sont représentées respectivement par les troisième et quatrième colonnes.
2. Comment changer la propriété du fichier
La commande chown nous permet de changer la propriété du fichier. Voyons son utilisation en définissant l’utilisateur Narendra en tant que propriétaire du fichier :
$ sudo chown narendra file-1.txt
Maintenant, vérifions que la propriété du fichier a été modifiée :
$ ls -l file-1.txt
3. Comment changer la propriété du groupe du fichier
Semblable à l’utilisateur, nous pouvons également modifier la propriété du groupe du fichier à l’aide de la chown commande. Alors, définissons la propriété de groupe du fichier sur le groupe – Narendra:
$ sudo chown :narendra file-1.txt
Il est important de noter que nous devons utiliser deux-points (:)
avec le nom du groupe lors de la modification de la propriété du groupe.
Vérifions maintenant la propriété du groupe du fichier :
$ ls -l file-1.txt
4. Comment changer la propriété et le groupe de fichiers
Dans les exemples précédents, nous avons utilisé le chown commande deux fois. Tout d’abord, pour modifier la propriété de l’utilisateur, puis pour modifier la propriété du groupe. Cependant, nous pouvons modifier à la fois l’utilisateur et le groupe à l’aide d’une seule commande.
Réinitialisons la propriété du fichier à l’utilisateur et au groupe tecmintà l’aide de la commande suivante :
$ sudo chown tecmint:tecmint file-1.txt
Dans cet exemple, nous avons utilisé les deux-points (:)
caractère pour séparer l’utilisateur et le groupe. La valeur avant les deux-points représente le utilisateur tandis que la valeur après les deux-points représente le groupe.
Maintenant, vérifions la propriété du fichier mis à jour :
$ ls -l file-1.txt
5. Comment changer la propriété du lien symbolique
Par défaut, le chown La commande déréférence le lien symbolique, ce qui signifie que si le fichier d’entrée est un lien symbolique, il change la propriété du fichier de référence au lieu du lien symbolique lui-même.
Cependant, nous pouvons remplacer le comportement par défaut en utilisant le -h
comme indiqué dans l’exemple suivant.
Commencez par créer un lien symbolique et vérifiez qu’il pointe vers le bon fichier de référence :
$ ln -s file-1.txt symlink $ ls -l symlink
Ensuite, changez le propriétaire du lien symbolique à l’aide de la -h
option:
$ sudo chown -h narendra:narendra symlink
Enfin, vérifiez la propriété du lien symbolique et de son fichier de référence :
$ ls -l symlink file-1.txt
6. Comment transférer la propriété du fichier à l’utilisateur
Parfois, nous devons mettre à jour la propriété du fichier uniquement après avoir validé sa propriété actuelle. Dans de tels cas, nous pouvons utiliser le --from
option de la chown commande comme indiqué.
$ sudo chown -h --from narendra:narendra tecmint:tecmint symlink
Dans cet exemple, le --from
L’option représente le propriétaire actuel du fichier alors que l’argument suivant représente le nouveau propriétaire. Ainsi, la commande ci-dessus met à jour la propriété du fichier – lien symbolique, uniquement si le fichier appartient à l’utilisateur et au groupe – Narendra.
Maintenant, vérifions la propriété mise à jour du fichier :
$ ls -l symlink
Dans cet exemple, nous avons spécifié à la fois l’utilisateur et le groupe en utilisant les deux-points (:)
personnage. Cependant, nous pouvons spécifier l’un ou l’autre comme indiqué dans les exemples précédents.
7. Comment copier la propriété d’un autre fichier
Parfois, il est pratique de copier la propriété à partir du fichier existant au lieu de fournir la même chose à partir de la ligne de commande. Dans de tels scénarios, nous pouvons utiliser le --reference
possibilité avec le chown commande, qui représente le fichier à partir duquel la propriété doit être copiée.
Tout d’abord, créez un nouveau fichier et changez son propriétaire :
$ touch file-2.txt $ sudo chown narendra:narendra file-2.txt
Vérifions maintenant la propriété actuelle des deux fichiers :
$ ls -l file-1.txt file-2.txt
Ensuite, définissez la propriété du fichier-2.txt déposer le même que le fichier-1.txt à l’aide de la commande suivante :
$ sudo chown --reference=file-1.txt file-2.txt
Enfin, vérifiez que la propriété a été mise à jour avec succès :
$ ls -l file-1.txt file-2.txt
Dans la sortie ci-dessus, nous pouvons voir que maintenant les deux fichiers ont le même propriétaire.
8. Comment changer la propriété du répertoire de manière récursive
Nous pouvons utiliser le chown commande pour changer également la propriété du répertoire. Cependant, le comportement par défaut de la commande est non récursif.
Cela signifie que le chown La commande changera la propriété du répertoire d’entrée uniquement. Cependant, nous pouvons remplacer ce comportement par défaut en utilisant le -R
comme indiqué dans l’exemple suivant.
Tout d’abord, créez un répertoire et deux fichiers dedans :
$ mkdir dir-1 $ touch dir-1/demo-1.txt dir-1/demo-2.txt
Ensuite, vérifiez la propriété du répertoire et de ses fichiers :
$ ls -ld dir-1 $ ls -l dir-1
Ensuite, changez le propriétaire du répertoire et de ses fichiers de manière récursive :
$ sudo chown -R narendra:narendra dir-1
Enfin, vérifiez la propriété du répertoire et de ses fichiers :
$ ls -ld dir-1 $ ls -l dir-1
9. Comment imprimer les détails du processus de commande Chown
Par défaut, le chown La commande n’imprime rien sur le terminal après avoir changé de propriétaire. C’est pourquoi, jusqu’à présent, nous avons utilisé le -l
option de la commande ls pour vérifier la propriété mise à jour.
Pour surmonter cette limitation, nous pouvons activer le mode verbeux de la commande qui imprime les diagnostics pour chaque fichier traité. Cette option donne des informations significatives lorsque nous l’utilisons avec le -R
option:
Alors, utilisons le -v
option de la commande pour activer le mode verbeux :
$ sudo chown -Rv tecmint:tecmint dir-1
Vérifions maintenant le résultat de la commande :
10. Comment supprimer les erreurs de commande Chown
Comme les autres commandes Linux, chown fournit également des informations significatives en cas de scénarios d’erreur. L’erreur peut se produire pour diverses raisons, telles que des fichiers, des groupes ou des utilisateurs inexistants, une autorisation insuffisante pour effectuer certaines opérations, etc.
Cependant, parfois, nous ne voulons pas afficher ces messages d’erreur. Dans de tels cas, nous pouvons utiliser le -f
option de la commande pour supprimer les messages d’erreur.
Pour mieux comprendre cela, essayons de changer le propriétaire du fichier inexistant :
$ sudo chown -f narendra:narendra non-existing-file.txt $ echo $? 1
Voyons maintenant le résultat de la commande :
Comme nous pouvons le voir, la commande ci-dessus ne montre aucune erreur. Cependant, la commande signale l’échec en utilisant la valeur de retour différente de zéro.
11. Comment changer l’utilisateur du fichier et l’ID de groupe
Jusqu’à présent, nous avons utilisé les noms d’utilisateur et de groupe pour modifier la propriété du fichier. Cependant, nous pouvons également utiliser les identifiants d’utilisateur et de groupe pour obtenir le même résultat.
Tout d’abord, utilisez le identifiant commande pour trouver l’utilisateur et l’ID de groupe de l’utilisateur – Narendra:
$ id narendra
Maintenant, utilisons l’ID d’utilisateur et de groupe 1001 avec le chown commande:
$ ls -l file-1.txt $ sudo chown 1001:1001 file-1.txt
Enfin, vérifiez que la propriété a été mise à jour avec succès :
$ ls -l file-1.txt
Dans cet article, nous avons discuté de quelques exemples pratiques de chown commande. On peut utiliser ces exemples dans la vie de tous les jours pour augmenter la productivité tout en travaillant avec des systèmes Linux.
Connaissez-vous un autre meilleur exemple de la commande chown sous Linux ? Faites-nous part de vos opinions dans les commentaires ci-dessous.