Version complète: sur le forum Webmaster Hub : Changer le propriétaire d'un fichier
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net
T0T0
Bonjour,

j'essaye de mettre en place un petit wiki sur un serveur mutualisé et j'ai des problèmes de droits sur les fichiers : après upload de mon wiki par FTP, le propriétaire des fichiers est naturellement 'toto' (pour l'exemple).
Je précise que ce wiki fonctionne sans base de données, les pages étant dans de simples fichiers .txt. Or pour que mon wiki fonctionne, et que les pages soient éditables, il faudrait que le propriétaire (UID et GID) soit 'apache', et non 'toto'.

Comment faire pour changer l'UID et le GID d'un fichier sur un serveur mutualisé ?
Je possède bien un gestionnaire de fichier dans l'administration du site, mais il ne propose que de le chmod (pas de chgrp ou de chown) sad.gif
iNCiTE Web
En faisant le chown en PHP ? http://fr.php.net/manual/fr/function.chown.php
T0T0
Eh non malheureusement, ça ne fonctionne pas. sad.gif
J'obtiens l'erreur suivante :
CODE
Warning: chown() [function.chown]: Operation not permitted in /bla/bla/bla/...

Or le manuel PHP indique que
CITATION
Seul le super-utilisateur (root) peut changer arbitrairement le propriétaire d'un fichier.
Et sur mon mutualisé, je ne suis pas root, juste 'toto' wink.gif

edit: Je me demandais si une tâche programmée (cron job) pouvait régler mon pb, mais je ne comprend pas encore très bien comment ça fonctionne... je cherche.
Gecko64
Et un chmod 772 ca n'irait pas?
Enfin de façon a rendre le fichier éditable par n'importe qui sur le système?
Normalement, le fichier t'appartenant, tu devrais pouvoir faire celà...
Si pas, essaie toujours de changer ton umask comme ca par defaut tu peux utiliser des autres droits d'accès.

Moi personellement (pcq je n'ai jamais trouvé de réponse clair la dessus), étant proprio de mon serveur, je met toujours le fichier sous le groupe de apache (www-data) et le proprio reste toujours l'utilisateur du fichier en tournant avec un "chmod 770".
Et tout ca je le met dans mon public_html ou je laisse que l'user et apache aussi y accéder.

Maintenant changer le GID et l'UID, tu as besoin d'etre root, c'est certain.
Je vien de le tester sur mon PC test à la maison:

gecko64_AT_debian-bidouille:~$ ls -ila
total 80
12517828 drwxr-xr-x 2 gecko64 gecko64 4096 2008-01-04 16:52 test

gecko64_AT_debian-bidouille:~$ chgrp www-data test/
chgrp: modification du groupe de `test/': Opération non permise
gecko64_AT_debian-bidouille:~$

OU encore

gecko64_AT_debian-bidouille:~$ chown www-data test/
chown: changement de propriétaire pour `test/': Opération non permise
gecko64_AT_debian-bidouille:~$
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.