[Réglé] utilisateurs groupes et droits

voila j’ai un petit probleme:
j’utilise un script php pour envoyer des fichiers sur ma debian. lorsqu’ils arrivent sur le serveur, le proprietaire/groupe est www-data/www-data

Donc pour pouvoir effacer ces fichiers plus tard je me suis mis dans le groupe www-data, mais le probleme c’est que les fichiers sont par defaut RW uniquement par le proprietaire donc www-data, il faudrait qu’ils soient par defaut RW aussi pour le groupe pour que je puisse les effacer en tant qu’user.

comment fait on cela ? j’ai cherché mais je ne dois pas employer les bons mots clés car je ne vois rien qui parle de cela :open_mouth:

humm oui, mais c’est pas tout a fait ce que je demandais. en fait je veux que cela soit automatique, c’est a dire que tout fichier crée par www-data soit pardefaut avec un chmod 664

je pense que cela se regle avec la commande “umask 002” mais ce que je ne comprends pas c’est comment attribuer ce umask a un utilisateur, ici en l’occurence www-data.

o c’est pour “other” il me semble, pourquoi pas un :

Ca devrait fonctionner nan?
Edit–> pour que ce soit automaisé, je n’est pas de réponse désolé.

la solution du chmod c’est valable pour un fichier, s’il faut le faire faire a chaque fois que j’upload un fichier sur le serveur ca n’a pas de sens. :confused:

ajoute un umask 007 dans le .bashrc de www-data
Et tous les fichiers que www-data créera auront les droits voulus c’est à dire rwxrwx— .
Je ne suis pas sûr d’avoir bien répondu à ton pb, car pas sûr d’avoir bien compris ton pb.

Sinon, pourquoi tu ne rajoutes pas la ligne chmod g+rw à ton script de départ, pour qu’il envoie le fichier, et change aussi ses droits ?

Et si tu ajoute ton utilisateur au groupe www-data ?

[quote=“dimm”]Et si tu ajoute ton utilisateur au groupe www-data ?

justement ca je l’ai deja fait, mais ca ne sert a rien d’etre dans le groupe www-data si www-data genere des fichiers non RW pour le groupe :wink:
je vais essayer la methode yanlolot

[quote=“yanlolot”]ajoute un umask 007 dans le .bashrc de www-data
Et tous les fichiers que www-data créera auront les droits voulus c’est à dire rwxrwx— .
Je ne suis pas sûr d’avoir bien répondu à ton pb, car pas sûr d’avoir bien compris ton pb.

Sinon, pourquoi tu ne rajoutes pas la ligne chmod g+rw à ton script de départ, pour qu’il envoie le fichier, et change aussi ses droits ?[/quote]
heu on le trouve ou le .bashrc de www-data ? c’est pas un user que j’ai crée par moi meme ca, c’est mon lighttpd.

question, est ce que le serveur web, que ce soit apache ou un autre herite des droits de celui qui l’execute ?? si c’est le cas et bien alors c’est dans mon .bashrc que je dois mettre le umask adequat :open_mouth:

Ça dépend donne nous le résultat de

bon j’ai trouvé cette discussion :
phpbuilder.com/board/archive … 54009.html

une personne donne la solution a mon probleme:

[quote]I attempted to explain. I can find no setting for Apache’s umask. Apache inherits the umask of the user who starts it — (at least it does in my case)…the only thing that throws me in your case is that you say your umask is 22 but Apache writes at a more restrictive level…

I read about this after seeing your question this morning. After reading your reply, I tried this:

[color=red][b]1. I set my umask to 22 in the shell (as root). I start Apache. I upload a file, and its permissions are ‘rw-r–r--’.

  1. I stopped Apache. I set my umask to 11 in the shell (as root). I start Apache. I upload a file, and its permissions are ‘rw-rw-rw-’.[/b][/color]

I can’t tell you for certain that this will work for you, or that it’s what you really want to do, but according to both my reading and my experimentation, it should work. Note that I stopped Apache, not a “graceful” or a “restart”.[/quote]
donc je me log en root
je fais un umask 002
je stop mon serveur: /etc/init.d/lightpd stop
je le relance : /etc/init.d/lightpd start
je vais sur mon site, j’upload le fichier.

Résultat il est encore rw-r–r-- :cry:

j’ai oublié un truc ??

[quote=“garga”]
j’ai oublié un truc ??[/quote]

oui !
apparement il faut relancer bash :smiley:
en root je fais : “touch test”
et le fichier test en rw-r–r-- malgré mon “umask 002”

je fais un “bash” puis “touch test”
et là mon fichier test est bien rw-rw-r-- 8)

bon ben voila maintenant ca fonctionne.

donc je résume :

on se log en root puis :
umask 002
bash
/etc/init.d/lighttpd stop ( ou /etc/init.d/apache stop suivant le serveur)
/etc/init.d/lighttpd start ( ou /etc/init.d/apache start suivant le serveur)

et voilà.