#1 Le 28/10/2008, à 15:21
- emlesna
chown
bonjour,
j'ai supprimer l'utilisateur www-data malencontreusement et il a été remplacer par 1003
J'ai donc tenté :
moi@mamachine:/var/www$ sudo chown -R www-data:www-data monsite/
chown: usager invalide: `www-data:www-data'
alors je seche , je l'est supprimé et je ne peux pas le créer
Merci de votre aide
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#2 Le 28/10/2008, à 15:25
- Jardiland
Re : chown
Bonjour,
Si tu l'as supprimé, il faut effectivement le recréer :
man adduser
Crée ton utilisateur. Attention, pour des raisons de sécurité, il faut donner comme shell /bin/false aux utilisateurs fictifs.
Réinstaller son système au moindre soucis est un réflexe de windowsien.
Sous linux, tous les problèmes peuvent être résolu sans réinstaller
---
Votre ordinateur s'ennuie ? Faites le participer à la recherche contre le cancer !
Hors ligne
#3 Le 28/10/2008, à 15:29
- emlesna
Re : chown
merci,
mais seulement voici ce que me retourne adduser :
moi@mamachine:/var/www$ sudo adduser www-data
adduser : Le groupe « www-data » existe déjà.
mais moi je parle de l'utilisateur pas du groupe, j'ai les boules !!!!!!
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#4 Le 28/10/2008, à 15:36
- twinsen93
Re : chown
Regarde les options de adduser dans la page man, ca devrait donner a peu près :
sudo adduser --uid 1003 --ingroup www-data --no-create-home www-data
Hors ligne
#5 Le 28/10/2008, à 15:46
- fabrice91
Re : chown
L'id de ton user www-data est donc 1003, il manque juste l'association entre cet id et l'utilisateur
essaye ceci :
adduser --uid 1003 --ingroup www-data www-data
--uid force le user avec l'uid 1003
--ingroup dit que le user doit se trouver dans ce groupe
eventuellement ajouter --no-create-home pour pas avoir de home (user system)
Si cela ne marche pas essaye d'ajouter l'option --system qui force le nouveau user à être un user system
edit : arf grillé, mais j'ai pas mis 10mn à taper ma réponse pourtant !!!
Dernière modification par fabrice91 (Le 28/10/2008, à 15:47)
Hors ligne
#6 Le 28/10/2008, à 15:49
- twinsen93
Re : chown
moi j'ai mis 10 minutes, peut-être que l'heure indiquée c'est l'heure de début d'édition du message
Hors ligne
#7 Le 28/10/2008, à 17:50
- emlesna
Re : chown
merci beaucoup pour votre aide à tous les deux !!!!!
J'ai remarqué que les scripts lancés par www-data avait besoin du prefixe "sudo" ex exec(" sudo cp ........);
comment donner à www-data l'autorité suffisante pour ne pas être obligé de rajouter "sudo" à toutes mes scripts dans site ?
Merci,
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#8 Le 28/10/2008, à 18:09
- twinsen93
Re : chown
De quels scripts il s'agit ?
Hors ligne
#9 Le 28/10/2008, à 18:11
- fabrice91
Re : chown
Ce n'est pas systématique...
Le sudo va faire que ta commande va prendre l'identité de root juste le temps d'effectuer cette commande. Le sudo n'est valable que pour intervenir sur des fichiers appartenant à root.
Tu peux tester un cp sans faire de sudo, je suis sur que si les droits du fichier que tu veux copier le permettent, ce sera faisable.
Mais attention, j'ai l'impression que tu ne maitrises pas beaucoup Linux, ses commandes et son système de fichiers !
Gare aux erreurs...
Hors ligne
#10 Le 28/10/2008, à 18:31
- emlesna
Re : chown
En fait , sur mon serveur local, le site execute des scripts du genre :
exec("cp ".$cheminSource.$nomDoc." ".$cheminDest."temp_".$nouveauNomSansExt.".pdf",$arg,$retour);
dans des pages php
mais le même script sur mon serveur dédié, en ligne, ne donne pas de reponse.
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#11 Le 28/10/2008, à 18:36
- twinsen93
Re : chown
Ces commandes sont lancées par le serveur web, donc avec l'user www-data.
Il faut t'assurer que les fichiers et répertoire ont les propriétaires et droits qui permettent à l'user www-data de faire ce qu'il a à faire.
Ajouter sudo n'est pas une bonne idée pour deux raisons :
1) qui va venir taper le mot de passe, et sur quelle console ?
2) permettre a ton site web de faire des choses en tant que root, c'est une belle faille potentielle
Hors ligne
#12 Le 28/10/2008, à 18:56
- emlesna
Re : chown
les commandes sont bien lancées par www-data,
les attributs de tous les fichiers du site sont du type :
-rwxrwxrwx 1 www-data www-data 3283 2008-09-10 10:19 cutPDF.php
-rwxrwxrwx 1 www-data www-data 3284 2008-09-10 10:19 cutPDF.php~
drwxrwxrwx 2 www-data www-data 4096 2008-10-28 15:34 destination_test
-rwxrwxrwx 1 www-data www-data 0 2008-10-28 15:35 destination_testlog
-rwxrwxrwx 1 www-data www-data 1063 2008-10-28 17:22 document2PDF.php
je ne vois pas ce que je peux faire de plus.....
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#13 Le 29/10/2008, à 10:43
- fabrice91
Re : chown
exec("cp ".$cheminSource.$nomDoc." ".$cheminDest."temp_".$nouveauNomSansExt.".pdf",$arg,$retour);
les commandes sont bien lancées par www-data
Tu as un debug qui imprime les valeurs de tes variables ci-dessus ?
Histoire d'être sur que les chemins sont corrects.
Ce sont des chemins relatifs ? absolus ?
C'est étrange qu'un user dont les fichiers lui appartiennent n'arrive pas à faire un cp dessus...
Hors ligne
#14 Le 29/10/2008, à 10:56
- emlesna
Re : chown
peut être que www-data, vu qu'il vient d'être recréer, doit faire parti d'un groupe dont les droits sont suffisants ?
Est ce que je peux mettre www-data dans le groupe root , par exemple ?
Merci
Dernière modification par emlesna (Le 29/10/2008, à 15:42)
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#15 Le 29/10/2008, à 14:32
- fabrice91
Re : chown
tape dans ta console de ton serveur dédié:
id www-data
pour voir l'id du user www-data et les groupes auxquels il appartient
tu peux faire de même en local pour voir les différences
et tu n'as pas répondu à mes questions
Hors ligne
#16 Le 29/10/2008, à 15:48
- emlesna
Re : chown
En local j'obtient :
id www-data
uid=33(www-data) gid=33(www-data) groupes=33(www-data)
En distant j'obtient :
id www-data
uid=1003(www-data) gid=33(www-data) groupes=33(www-data)
Pour répondre à tes questions,les chemins sont valides, de toute façon il suffit que je commente l'execution php est la page s'affiche, sans le resultat de la commande certe, mais elle s'affiche.
Dernière modification par emlesna (Le 29/10/2008, à 15:50)
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#17 Le 29/10/2008, à 17:21
- emlesna
Re : chown
c'est normal que les "uid" soient differentes ?
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne
#18 Le 30/10/2008, à 10:51
- fabrice91
Re : chown
A priori les uid différentes ne changent rien, il n'y a pas communication entre ton local et ton serveur non ?
L'uid est simplement un mapping entre une ID et un nom, un peu comme une adresse IP et une url ou ton nom et ton adresse...:rolleyes:
Si tu veux affecter l'uid 33 a www-data sur ton serveur, il faut d'abord vérifier qu'aucun autre utilisateur n'a cette uid :
grep 33 /etc/passwd
S'il n'y a pas d'utilisateur qui a l'id 33, tu peux forcer cet uid pour www-data
En fait quand tu as recrée ton user avec adduser, celui-ci ajoute les nouveaux users à partir de l'uid 1000.
Tu dois avoir déja un utilisateur avec l'uid 1000, un avec 1001 et un autre avec 1002.
1003 a été attribué a www-data lorsque tu l'as recréé.
Un man de usermod nous dit :
usermod - Modifier un compte utilisateur
-u, --uid UID
Valeur numérique de l´identifiant de l´utilisateur. Cette valeur doit être unique, à moins que l´option -o ne soit utilisée. La valeur ne doit pas être négative. Les
valeurs comprises entre 0 et 999 sont généralement réservées aux comptes système. Tous les fichiers possédés par l´utilisateur et qui sont situés dans son répertoire
personnel verront leur identifiant d´utilisateur automatiquement modifié. Vous devrez modifier vous-même les fichiers situés à l´extérieur du répertoire personnel de
l´utilisateur.
Donc tu peux faire un :
usermod -u 33 www-data
pour forcer www-data a un uid de 33
Dernière modification par fabrice91 (Le 30/10/2008, à 10:52)
Hors ligne
#19 Le 01/11/2008, à 15:23
- emlesna
Re : chown
merci,
desormais lorsque je relance apache j'ai l'erreur suivante :
sudo /etc/init.d/apache2 start
* Starting web server apache2 [Sat Nov 01 14:12:52 2008] [warn] NameVirtualHost *:80 has no VirtualHosts
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
pourquoi ne veut -il pas se relancer ?
Dans ce cas je suis obligé de redemarrer la machine , c'est genant , non
Dernière modification par emlesna (Le 01/11/2008, à 15:24)
Indicateur de position dans les moteurs de recherche :
http://rankmonitor.webou.net
Hors ligne