Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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 sad
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 smile

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? big_smile

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 wink

#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