web-dev-qa-db-fra.com

www-data related: Quelle est la différence entre ces usages de CHOWN?

Mon nom d'utilisateur est jknoppf. J'utilise Apache et souhaite me donner un accès complet à/var/www/html et commencer par

$ Sudo adduser jknoppf www-data

Ensuite j'ai

$ Sudo chown -R www-data:www-data /var/www/html

Ça marche!

Mais sur certains forums, j'ai aussi lu

$ Sudo chown -R jknoppf:www-data /var/www/html

Et ça marche aussi! Quelle est la différence entre ces deux variantes d’utilisation de chown?

4
Jurgen Knopf

Sudo adduser jknoppf www-data and Sudo chown -R www-data:www-data /var/www/html:

Le premier ajoutera l'utilisateur jknoppfdans le groupe www-data, et le second changera le propriétaire de tous les répertoires et fichiers, y compris /var/www/html, dans l'utilisateur www-data, et changera également le propriétaire du groupe dans le groupe www-data. Puisque l'autorisation pour /var/www/html est par défaut 775 et que l'utilisateur jknoppfest dans le groupe www-data, cet utilisateur peut avoir un accès complet à tout le contenu qu'il contient.


Sudo chown -R jknoppf:www-data /var/www/html:

Cette commande permet de changer le propriétaire de tous les répertoires et fichiers, y compris /var/www/html, en l'utilisateur jknoppfname__, ainsi que le propriétaire du groupe dans le groupe www-data. Puisque l'autorisation pour /var/www/html est par défaut 775 et que l'utilisateur jknoppfest le propriétaire du répertoire, cet utilisateur peut avoir un accès complet à tout le contenu qu'il contient.


Remarques: la permission 775 signifie:

Premier 7: le propriétaire du fichier a un accès complet aux fichiers, à savoir read 4 + write 2 + execute 1.

Deuxième 7: tous les utilisateurs du groupe, dont le groupe est propriétaire, ont un accès complet aux fichiers, à savoir read 4 + write 2 + execute 1.

Troisième 5: toutes les autres personnes qui ne sont ni le propriétaire ni les membres du groupe ont uniquement accès à lire 4 + execute 1.

5
Cynplytholowazy

Il s’agit de ce que vous essayez d’atteindre.

Si vous êtes une personne qui souhaite utiliser les fichiers de /var/www/html, vous pouvez utiliser la deuxième instruction. Cela fait de votre utilisateur le propriétaire du /var/www/html et vous pouvez alors enregistrer, modifier, ... les fichiers de ce répertoire, en même temps que www-data sera le groupe du répertoire afin que votre serveur Web puisse également utiliser les fichiers. .

Si de nombreuses personnes sur votre PC travaillent sur différents projets, vous pouvez utiliser la première instruction, qui permet à tous les membres de www-data de travailler avec des fichiers dans le /var/www/html.

Le premier est un meilleur choix. Toutefois, si différentes personnes travaillent sur différents projets sur votre système, je suggère d’avoir un groupe différent en tant que groupe de projet et www-data en tant que propriétaire du projet.

Voici un exemple, j'ai 3 utilisateurs, bob, john et pyter.

  • bob et john travaillent sur un projet nommé "foo".
  • bob an pyter travaille sur un projet nommé "bar".

Ce qui suggère est:

Sudo mkdir /var/www/html/foo
Sudo mkdir /var/www/html/bar

Sudo addgroup foo
Sudo addgroup bar

Sudo gpasswd -a bob foo
Sudo gpasswd -a john foo

Sudo gpasswd -a bob bar
Sudo gpasswd -a pyter bar

chown foo:www-data /var/www/html/foo
chown bar:www-data /var/www/html/bar

Aussi, je vous recommande fortement de lire:

Quelles autorisations doivent avoir les fichiers/dossiers de mon site Web sur un serveur Web Linux?

3
Ravexina