Page 1 sur 1
[Bash] Backup journalier de Domoticz vers un serveur ftp V2
Publié : 18 nov. 2014, 14:36
par jackslayter
sur la base de
http://easydomoticz.com/backup-journali ... rveur-ftp/ voici ma version améliorée qui sauvegarde tout les scripts et les lua (/home/pi/domoticz/scripts ... /lua)
backup_s.sh
Code : Tout sélectionner
#!/bin/bash
mkdir /var/tmp/domoticz_backup
TIMESTAMP=`/bin/date +%Y-%m-%d_%H:%M`
BACKUPFILE="domoticz_$TIMESTAMP.db"
BACKUPFILEGZ="domoticz_backup_$TIMESTAMP".tar.gz
/usr/bin/curl -s http://ADRESSE_IP:8080/backupdatabase.php > /var/tmp/domoticz_backup/$BACKUPFILE
cp -R /home/pi/domoticz/scripts/lua/ /var/tmp/domoticz_backup/
cp -R /home/pi/domoticz/scripts/*_s.sh /var/tmp/domoticz_backup/ #REMPLACER _s par ce que vous voulez, cela sert a sauvegarder que les scripts perso il faut donc a chaque script cree ajouter ce _s
cd /var/tmp/
tar cvzf "/var/tmp/$BACKUPFILEGZ" domoticz_backup
curl -s --disable-epsv -v -T"/var/tmp/$BACKUPFILEGZ" -u USERNAME:PASSWORD ftp://ftp.x.fr//
rm -R /var/tmp/domoticz_backup
rm /var/tmp/"$BACKUPFILEGZ"
un petit chmod
pour l’exécuter (à 3h00 tous les jours) un cron 0 3 * * * sudo /home/pi/domoticz/scripts/backup_s.sh 2>&1 >> /dev/null
Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 26 nov. 2014, 15:20
par loops
Salut à tous !
Je crois qu'il y a une erreur dans le script. En tous cas pour le faire fonctionner chez moi j'ai du le modifier ...
Code : Tout sélectionner
cd /var/tmp/
tar cvzf "/var/tmp/$BACKUPFILEGZ" domoticz_backup
On se trouve dans /var/tmp et on créé une archive du dossier domoticz_backup. L'archive se trouve dons dans le dossier /var/tmp.
on vient maintenant chercher l'archive pour l'uploader sur le FTP :
Code : Tout sélectionner
curl -s --disable-epsv -v -T"/var/tmp/domoticz_backup/$BACKUPFILEGZ" -u USERNAME:PASSWORD ftp://ftp.x.fr//
Le problème c'est que l'on vient la chercher dans /var/tmp/domoticz_backup !
J'ai donc modifié cette commande par :
Code : Tout sélectionner
curl -s --disable-epsv -v -T"/var/tmp/$BACKUPFILEGZ" -u USERNAME:PASSWORD ftp://ftp.x.fr//
Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 26 nov. 2014, 15:27
par jackslayter
effectivement , j'ai corrigé

Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 27 nov. 2014, 12:04
par loops
Salut !
J'ai apporté une autre modif, cette fois ci sur la commande CRON ...
Code : Tout sélectionner
* 3 * * * sudo /home/pi/domoticz/scripts/backup_s.sh 2>&1 >> /dev/null
Cette commande execute une sauvegarde toutes les minutes (ou presque) à 3h du matin (3h00, 3h01, 3h02, ...)
J'ai modifié pour :
Code : Tout sélectionner
0 3 * * * sudo /home/pi/domoticz/scripts/backup_s.sh 2>&1 >> /dev/null
La sauvegarde se fait du coup une fois par nuit !!! ;D

Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 27 nov. 2014, 13:17
par jackslayter
j'ai vraiment fait de la me.de dans le copié/collé , ça devrai être bon maintenant

Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 27 nov. 2014, 13:26
par loops
Je pense aussi !! ;D En tous cas chez moi ça tourne bien !!! ;D
Petite précision pour ceux qui auraient (comme moi) une erreur lors de l’exécution de la commande CRON :
Code : Tout sélectionner
pi@domoticzpi ~ $ sudo cron 0 3 * * * sudo /home/pi/domoticz/scripts/backup_s.sh 2>&1 >> /dev/null
cron: can't lock /var/run/crond.pid, otherpid may be 1782: Resource temporarily unavailable
Je ne connais pas la cause de ce problème mais je l'ai facilement contourné en faisant un :
Et en ajoutant en fin de fichier la ligne :
Code : Tout sélectionner
0 3 * * * sudo /home/pi/domoticz/scripts/backup_s.sh 2>&1 >> /dev/null
Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 27 nov. 2014, 14:20
par jackslayter
normalement il n'y a pas besoin du sudo pour crontab -e
il faut faire dans l'invite de commande
et ajouter la ligne
quitter avec ctrl + x , enregistrer
Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 12 déc. 2014, 11:17
par loops
Tu as tout à fait raison !
D'autant plus qu'en exécutant l’édition du cron avec sudo, j'avais une archive qui était déposée sur le serveur FTP mais, en la vérifiant, je me suis aperçu que son contenu était foireux !
J'ai refait le cron sans sudo et ça fonctionne parfaitement !
Re: Backup journalier de Domoticz vers un serveur ftp V2
Publié : 05 juil. 2017, 09:41
par Cissou
salut, je déterre ce post, car j'ai un soucis avec les backups de la DB
Elle ne se font plus.
voici ma commande
Code : Tout sélectionner
TMPDIR="/home/pi/tmp"
TIMESTAMP=`/bin/date +%Y%m%d%H%M%S`
BACKUPFILE="db_domoticz_$TIMESTAMP.db"
BACKUPFILEGZ="$BACKUPFILE".gz
/usr/bin/curl -s http://$DOMO_IP:$DOMO_PORT/backupdatabase.php > $TMPDIR/$BACKUPFILE
tar zcvf BACKUPFILEGZ $TMPDIR/$BACKUPFILE
curl -s --disable-epsv -v -T"$TMPDIR/$BACKUPFILEGZ" -u"$USERNAME:$PASSWORD" "ftp://$SERVER$DESTDIR/"
et l'erreur que j'ai
Code : Tout sélectionner
tar: Suppression de « / » au début des noms des membres
/home/pi/tmp/db_domoticz_20170705093435.db
curl: Can't open '/home/pi/tmp/db_domoticz_20170705093435.db.gz'!
le fichier /home/pi/tmp/db_domoticz_20170705093435.db existe pourtant bel et bien avec la bonne taille