Chown est une commande sur Linux qui est utilisée afin de changer le propriétaire d’un ensemble de fichiers ou de répertoires.
Chown est livré avec plusieurs options et il est souvent utilisé pour changer le groupe propriétaire du fichier.
Cependant, dans certains cas, vous pouvez avoir besoin de changer le propriétaire d’un répertoire avec tous les fichiers qu’il contient.
Pour cela, vous pouvez avoir besoin d’utiliser une des options de la commande chown : le chown récursif.
Dans ce tutoriel, vous allez apprendre comment vous pouvez utiliser la commande chown de manière récursive pour changer les permissions des dossiers et des fichiers de manière récursive.
Table des matières
Chown de façon récursive
La façon la plus simple d’utiliser la commande chown de façon récursive est d’exécuter « chown » avec l’option « -R » pour récursif et de spécifier le nouveau propriétaire et les dossiers que vous voulez changer.
$ chown -R <owner> <folder_1> <folder_2> ... <folder_n>
Par exemple, si vous voulez changer le propriétaire des répertoires et des fichiers contenus dans le répertoire personnel d’un utilisateur spécifique, vous écrirez
$ chown -R user /home/user
Note : si vous avez besoin d’un guide complet sur la commande chown, nous en avons écrit un très complet sur les permissions de fichiers sous Linux.
Chown User and Group Recursively
Pour changer l’utilisateur et le groupe possédant les répertoires et les fichiers, vous devez exécuter « chown » avec l’option « -R » et spécifier l’utilisateur et le groupe séparés par des deux points.
$ chown -R <user>:<group> <folder_1> <folder_2> ... <folder_n>
Par exemple, disons que vous voulez changer l’utilisateur possédant les fichiers en « user » et le groupe possédant les fichiers en « root ».
Pour y parvenir, vous exécuteriez la commande suivante
$ chown -R user:root /home/user
Félicitations, vous avez réussi à utiliser la commande « chown » de manière récursive pour changer les propriétaires sur votre serveur !
Chown récursivement en utilisant find
Une autre façon d’utiliser la commande « chown » récursivement est de la combiner avec la commande « find » dans find files matching a given pattern and changing their owners and groups.
$ find <path> -name <pattern> -exec chown <user>:<group> {} \;
Par exemple, disons que vous voulez changer le propriétaire pour tous les fichiers TXT qui sont présents à l’intérieur d’un répertoire donné sur votre serveur.
D’abord, il est très recommandé d’exécuter la commande « find » seule afin de vérifier que vous faites correspondre les bons fichiers.
Dans cet exemple, nous allons faire correspondre tous les fichiers TXT dans le répertoire personnel de l’utilisateur actuel.
$ find /home/user -name *.txt
Maintenant que vous vous êtes assuré que vous ciblez les bons fichiers, vous pouvez le lier avec le « chown » afin de changer récursivement les permissions.
$ find /home/user -name *.txt -exec chown user {} \;
Comme vous pouvez le voir, le propriétaire des fichiers TXT a été changé, pourtant aucun des autres fichiers et répertoires n’a été modifié.
Faire attention au chown récursif
Sur Linux, l’exécution de commandes telles que chown, chmod ou rm est définitive : il n’y a pas de retour en arrière.
En conséquence, vous devrez faire très attention à ne pas exécuter de commandes qui endommageraient votre système.
Ce point est illustré dans la section précédente : nous avons exécuté la commande find seule et nous nous sommes assurés que le résultat était correct.
Puis, nous avons exécuté la commande chown afin de modifier récursivement les permissions des fichiers à partir de la commande précédente.
En règle générale : si vous n’êtes pas sûr de la sortie d’une commande, divisez-la en plus petits morceaux jusqu’à ce que vous soyez sûr que vous n’exécuterez rien de nuisible.
Conclusion
Dans ce tutoriel, vous avez appris comment vous pouvez exécuter la commande chown de manière récursive sur votre système.
Vous avez appris que vous pouvez y parvenir en utilisant l’option « -R » ou en la combinant avec la commande find.
Les permissions Linux sont un vaste sujet : nous vous encourageons vraiment à jeter un coup d’œil à notre guide complet sur les permissions Linux si vous voulez en savoir plus.
De plus, si vous êtes intéressé par l’administration du système Linux, nous avons une section complète qui lui est dédiée sur le site, alors assurez-vous de la consulter !
.