2009-08-06 23:30:27 +0000 2009-08-06 23:30:27 +0000
199
199

Comment puis-je donner l'accès en écriture à un dossier à tous les utilisateurs de linux ?

Je viens d'installer apache2 sur Ubuntu, et j'ai remarqué que le dossier /var/www est protégé. Je peux juste sudo tout mais je préfère lui donner un accès en écriture.

Comment puis-je faire cela ?

J'ai essayé sudo chmod 7777 /var/www mais ça n'a pas marché.

Réponses (8)

328
328
328
2009-08-07 00:15:22 +0000

Afin de pouvoir partager au mieux avec plusieurs utilisateurs qui devraient pouvoir écrire dans /var/www, il convient de lui attribuer un groupe commun. Par exemple, le groupe par défaut pour le contenu web sur Ubuntu et Debian est www-data. Assurez-vous que tous les utilisateurs qui ont besoin d'un accès en écriture à /var/www sont dans ce groupe.

sudo usermod -a -G www-data <some_user>

Puis définissez les permissions correctes sur /var/www.

sudo chgrp -R www-data /var/www
sudo chmod -R g+w /var/www

De plus, vous devez faire en sorte que le répertoire et tous les répertoires en dessous de celui-ci soient “set GID”, de sorte que tous les nouveaux fichiers et répertoires créés sous /var/www soient la propriété du groupe www-data.

sudo find /var/www -type d -exec chmod 2775 {} \;

Trouvez tous les fichiers dans /var/www et ajoutez les droits de lecture et d'écriture pour le propriétaire et le groupe :

sudo find /var/www -type f -exec chmod ug+rw {} \;

Vous devrez peut-être vous déconnecter et vous reconnecter pour pouvoir faire des modifications si vous modifiez les droits pour votre propre compte.

34
34
34
2011-09-22 10:31:49 +0000

Il y a une façon plus simple de faire cela, essayez de faire cette commande.

sudo chmod -R 757 /var/www

Essentiellement, la commande chmod modifie les autorisations et le commutateur -R affecte tous les utilisateurs. Il s'agit alors simplement de donner les bonnes permissions d'utilisation.

30
30
30
2013-08-09 19:22:50 +0000

Lecture+Ecriture :

sudo chmod -R a+rw /var/www

Lecture+Ecriture+Exécution :

sudo chmod -R a+rwx /var/www
8
8
8
2009-08-08 12:29:16 +0000

Vous pouvez également reproduire ce que jtimberman a suggéré en utilisant access control lists . La commande setfacl accepte -s pour remplacer une liste de contrôle d'accès existante ou -m pour la modifier ; -R pour rendre les listes de contrôle d'accès de répertoire récursives ; et -d pour faire des paramètres spécifiés les paramètres par défaut, ce qui est utile si vous prévoyez des comptes d'utilisateurs à venir.

Il suffit de définir les permissions comme vous le feriez pour l'utilisateur, le groupe, l'autre et le masque en utilisant chmod :

setfacl -m u::rwx, g::r-x, o::---, m:rwx DIRECTORY

Et cela pourrait être la façon dont vous le feriez pour un utilisateur spécifié ou son groupe :

setfacl -m u:USERNAME:rwx, g:USERNAME:r-x DIRECTORY

Et bien sûr, la force est que vous pouvez désigner n'importe quel utilisateur spécifique, plusieurs utilisateurs, etc, le tout sans avoir à modifier les paramètres de votre groupe. Et contrairement au chmod, si vous voulez que certains groupes aient accès à un répertoire et que d'autres groupes n'aient accès qu'à un autre, c'est en fait possible avec setfacl. Enfin, pour voir les ACL d'un répertoire, lancez getfacl :

getfacl DIRECTORY

Et vous pouvez spécifier -R pour voir les ACL des sous-répertoires ou -d pour voir les valeurs par défaut.

3
3
3
2018-02-20 02:20:19 +0000

La réponse rapide et facile -

a. Ajoutez (-a) votre utilisateur (user_name) au groupe (-G) www-data.

sudo usermod -a -G www-data user_name

b. Donnez au groupe (g) les mêmes (=) permissions que l'utilisateur propriétaire (u) de /var/www récursivement (-R).

sudo chmod -R g=u /var/www

Explication : Apache 2 sur Debian/Ubuntu définit l'utilisateur et le groupe www-data comme étant le propriétaire de /var/www. Les autorisations par défaut pour l'utilisateur sont “View & Modify Content”, mais le groupe ne peut que “View Content”. Ainsi, s'ajouter au groupe www-data et lui donner les mêmes autorisations que l'utilisateur wwww-data est un moyen rapide et facile de se développer. Je fais cela pour tous mes environnements de développement Web localhost (PC/Laptop).

2
2
2
2017-03-19 21:13:20 +0000

J'utilise typiquement

chmod g+w /folder/ -R

Cela s'explique presque tout seul.

Cela ajoute tout le monde dans le groupe g de /folder/ pour avoir un accès en écriture (w) , +w est pour la récursion pour les sous-dossiers.

-3
-3
-3
2009-08-07 02:01:12 +0000

Pouvez-vous juste essayer chmod 0777 /var/www ?

Un mot d'avertissement : si vous laissez tout le monde accéder à ce dossier, cela signifie que les pirates peuvent accéder à ce dossier s'ils accèdent à votre système. C'est pourquoi il est préférable de créer un groupe d'utilisateurs autorisés et de leur donner un accès en écriture.

-3
-3
-3
2011-09-30 09:58:58 +0000

Vous entrez d'abord le chemin du dossier en question, puis vous utilisez la commande …

chmod -R 777 foldername
chown username:username foldername