Comment supprimer des fichiers d'un dossier appartenant à quelqu'un d'autre

0

Je ne trouve pas la solution à un problème sous Unix qui semble très simple, je possède un dossier folderappartenant à root.

J'ai un utilisateur www-datacapable d'écrire et de lire des fichiers dans ce dossier. J'ai aussi un utilisateur prodqui devrait pouvoir supprimer des fichiers folder.

Pour résoudre cela, www-dataet les proddeux ont des droits acl sur folderpour la lecture et d' écriture.

Le problème est que prodest incapable de supprimer les fichiers, rootpeut cependant.

Comment dois-je résoudre ce problème sans sudo?

Je suis à peu près sûr que cette question a déjà été posée, mais je ne la trouve nulle part

Masadow
la source
1
Tu ne peux pas. Vous pouvez soit vous connecter à l'utilisateur root et supprimer les fichiers, soit vous connecter à l'utilisateur root et en changer le propriétaire, puis supprimer les fichiers
associés
avez-vous envisagé d'utiliser SetGID dans le répertoire parent et de définir le groupe de propriétaires du parent comme groupe dans lequel se trouvent les deux utilisateurs et, enfin, de fournir des droits de suppression au groupe? vous devrez initialement définir la propriété du contenu du répertoire de manière récursive sur root: youWebGroup et les autorisations sur 77x.
Frank Thomas
@Ramhound Je voulais une sorte de racine restreinte, car un journal de script proddoit et doit être capable de faire tout ce que vous rootpouvez faire, mais uniquement dans le dossier folder.
Masadow
@ FrankThomas Je n'ai pas la main sur les autorisations de fichiers et je voulais éviter de rootme connecter en tant que , je voulais configurer l'utilisateur prodpour qu'il soit une sorte de maître du folderdossier
Masadow
vous n’auriez pas besoin de vous connecter en tant que root, une fois que vous aurez initialement modifié la propriété et les autorisations de dir. vous vous connecteriez en tant que membre de votre groupe Web, ce qui inclurait à la fois www-data et prod. afin que vous puissiez vous connecter en tant que prod et que vous puissiez modifier / supprimer des fichiers, et grâce à setGID, tous les nouveaux fichiers absorberont le groupe de propriétaires de parents pour que tout fonctionne après sa configuration.
Frank Thomas

Réponses:

0

définir umask 0000 pour l'utilisateur www-data

Ensuite, tous les fichiers écrits seront 666 et n'importe qui, y compris votre utilisateur prod, pourra les lire / écrire / les supprimer.

Une autre façon de le faire est de modifier l'identifiant de l'utilisateur "prod" pour qu'il soit identique à l'utilisateur www-data. Cela peut avoir d’autres effets bizarres, mais peut permettre d’atteindre ce que vous déclarez vouloir faire!

Vorsprung
la source
Cela semble une bonne solution, mais n'est-il pas dangereux de le faire?
Masadow
0

J'ai finalement trouvé quelque chose lié à l'acl.

Je viens de définir les permissions par défaut pour le répertoire folderafin prodque tous les fichiers www-datacréés appartiennent également prodà acl:

setfacl -Rm d:u:prod:rwx folder

Masadow
la source