📋 Commande : chown


> La commande **chown** (Change Owner) permet de modifier le propriétaire (utilisateur) et le groupe associé à un fichier ou un répertoire.

Par défaut, un fichier appartient à l’utilisateur qui l’a créé. Cependant, en administration système, il est fréquent de devoir transférer la propriété d’un fichier (par exemple, donner un fichier de configuration web à l’utilisateur www-data ou se réapproprier un dossier créé par root).

Note : Généralement, seul le super-utilisateur (root) ou l’utilisation de sudo permet de changer le propriétaire d’un fichier arbitraire.

> chown www-data:www-data shell.php

Options Importantes

Option Description
-R Récursif. Modifie le propriétaire et le groupe pour le dossier cible et tout ce qu’il contient (fichiers et sous-dossiers).
-v Verbeux. Affiche un diagnostic pour chaque fichier traité.
-c Comme -v, mais n’affiche un message que si un changement a réellement été effectué (utile pour les scripts).
--reference=FichierR Utilise le propriétaire et le groupe du FichierR (fichier de référence) pour les appliquer au fichier cible.

Exemples

  1. Changer le propriétaire uniquement
bash
sudo chown kali fichier.txt
````
*Explication* :
	Pour transférer la propriété d'un fichier à un autre utilisateur (ici l'utilisateur `kali`) :


> 2. Changer le propriétaire et le groupe simultanément

C'est l'utilisation la plus courante. On utilise la syntaxe `utilisateur:groupe`.

```Bash
sudo chown kali:kali archive.zip

Contexte :

Si vous avez décompressé une archive avec sudo, les fichiers appartiennent souvent à root. Cette commande permet de se les réapproprier totalement.

  1. Modification récursive sur un dossier

Pour changer les droits de tout un répertoire (par exemple un site web ou un outil téléchargé) :

bash
sudo chown -R www-data:www-data /var/www/html/

Explication :

L’option -R assure que tous les fichiers existants dans /var/www/html/ appartiendront désormais à l’utilisateur et au groupe www-data (souvent utilisé par les serveurs web comme Apache ou Nginx).

  1. Changer le groupe uniquement

Bien qu’il existe la commande chgrp, chown permet aussi de ne modifier que le groupe en précédant le nom du groupe par deux-points :

bash
sudo chown :developers projet.py

Explication :

Cela laisse le propriétaire inchangé mais modifie le groupe en developers.