Pages : 1
#1 Le 15/03/2008, à 18:14
- Slum
Exec PHP et droits d'ecriture
Bonjour à toutes et à tous,
J'ai réalisé une interface PHP qui me sauvegarde mes données de dev, c'est à dire un script PHP qui appelle un sh via la commande EXEC, créé un tar.gz de mes données, puis les copie sur une clé USB.
Le soucis, c'est que visiblement le script exécuté pat PHP n'a pas les droits pour écrire sur la clé USB.
Comment remédier à ce problème ?
Merci d'avance.
Hors ligne
#2 Le 15/03/2008, à 22:02
- @brasiv
Re : Exec PHP et droits d'ecriture
Au risque de dire une bêtise, à ta place je commencerais par vérifier si dans mon phpinfo le safe_mode est activé.
#3 Le 15/03/2008, à 22:57
- Slum
Re : Exec PHP et droits d'ecriture
Hello !
EN mettant le safe_mode à On, le script ne fonctionne plus
j'ai donc modifié le chemin d'exécution des scripts et là retour au point initial ...
Dernière modification par Slum (Le 15/03/2008, à 23:00)
Hors ligne
#4 Le 16/03/2008, à 07:18
- @brasiv
Re : Exec PHP et droits d'ecriture
Oui mais je voulais pas te suggérer de mettre ton safe_mode à ON, je pensais juste qu'il l'était déjà et que c'était ça la cause de tes tourments
Ta clé est montée avant le démarrage du script?
T'as quoi comme message d'erreur quand l'écriture sur la clé échoue?
T'as assez de place dessus au moins?
Si ça se trouve, tu as juste un souci de uid/gid.
Essaie d'écrire le tar.gz ailleurs sur ton serveur pour isoler le problème.
Ça reste abstrait ton affaire. Je pense que si tu postes un bout de ton script des gens pourront t'aider.
Et sûrement beaucoup mieux que moi
#5 Le 16/03/2008, à 08:18
- Slum
Re : Exec PHP et droits d'ecriture
Salut !
Alors oui la clé est bien montée et elle est formatée donc pas de soucis à ce niveau (tout fonctionne lorsque le script est exécuté avec un utilisateur d'ubuntu).
Le montage de la clé (fat 32) se fait par l'intermédiaire d'ubuntu, je n'ai rien rajouté dans le fstab.
Voici le script exécuté :
#!/bin/bash
FICHIER=$(echo /tmp/backup-ubuntu-server-`date '+%Y-%m-%d-%H-%M-%S'`.tar.gz)
rm -Rf /tmp/backup-ubuntu-server*
if (test -d $1) then
rm -Rf /tmp/bckp
echo "<b>Creation d'un repertoire temporaire</b>"
mkdir /tmp/bckp
echo "<b>Sauvegarde du repository</b>"
cp -Rf /var/svn /tmp/bckp
echo "<b>Sauvegarde de la copie locale XXXXXXXXXX</b>"
cp -Rf /var/www/XXXXXXX /tmp/bckp
echo "<b>Copie des bases MySQL</b>"
cp -Rf /var/lib/mysql /tmp/bckp
echo "<b>Compression du fichier $FICHIER</b>"
tar cvfz $FICHIER /tmp/bckp
rm -Rf /tmp/bckp
echo "<b>Copie du fichier vers $1</b>"
mv $FICHIER $1
if (test -f $1/$FICHIER) then
echo "<b>Sauvegarde terminée.</b>"
else
echo "<b>Erreur ! Le fichier n'est pas présent sur le disque de sauvegarde $1. Le disque est peut être plein...</b>"
fi
else
echo "Erreur : Repertoire de destination non trouvé"
fi
Le script s'appelle en passant en paramètre le chemin de sauvegarde, ici ma clé USB :
./backup.sh /media/disk
Dernière modification par Slum (Le 16/03/2008, à 08:22)
Hors ligne
#6 Le 16/03/2008, à 19:54
- Slum
Re : Exec PHP et droits d'ecriture
Hello!
Merci de tes réponses, finalement j'ai réussi en utilisant le crontab utilisateur
Hors ligne
Pages : 1