backup ftp con notifica

Discussioni relative al software di monitoraggio energetico METERN
megamarco83
Messaggi: 246
Iscritto il: 22/08/2016, 14:13

backup ftp con notifica

Messaggioda megamarco83 » 10/12/2019, 17:01

ciao uso da diverso tempo lo script per fare backup su ftp:

Codice: Seleziona tutto

#!/bin/bash
# Simple backup script, edit your crontab and add the line
# 0 2 * * * /home/ftpbackup.sh o sistemd
# modifica 27.12.16 by Moretti Cesare

LOCKFILE=/var/run/ftpbackup.pid
if [ -f $LOCKFILE ]; then
CPID="`cat $LOCKFILE`"
fi

if [ -e ${LOCKFILE} ] && kill -0 `cat ${LOCKFILE}`; then
   echo "A Plugbox backup is already running as PID:$CPID"
   exit
else
   echo "Starting to backup Raspberry.."
fi

HOST="KKKKK.superweb.ws"  # web server remoto ftp
USER="YYYY"   # nominativo accesso
FTPPASS="XXXXX" # passwd

LCD="/var/www/" # percorso server locale dei files da salvare, sostituire il percorso se il server è /var/www/
RCD="/backupdir/mirror/" # creare una cartella da utilizzare su server remoto in questo caso "plugbox"
DOMOTIC_BK="/var/www/domoticz_backup" #cartella per domoticz backup

/usr/bin/curl -s http://192.168.0.105:8085/backupdatabase.php > $DOMOTIC_BK/domoticz.db  # copio database DOMOTICZ in /var/www/domoticz_backup

# make sure the lockfile is removed when we exit and then claim it
trap "rm -f ${LOCKFILE}; exit" INT TERM EXIT
echo $$ > ${LOCKFILE}

# upload files
lftp -e "set ftp:list-options -a;
open ftp://$USER:$FTPPASS@$HOST;
lcd $LCD;
cd $RCD;
mirror -n --only-newer -Re --use-cache;
quit"

rm -f ${LOCKFILE}


lo script è di tipo incrementale e per le mie esigenze funziona molto bene
sono riuscito ad aggiungere il backup del file db di domoticz in modo da avere sempre l'ultimo.

ora avrei una richiesta, se possibile.
mi sono accorto che a fine novembre il provider dello spazio ftp "supereb.ws" per un problema suo non accettava autenticazioni esterne.
me ne sono accorto solo ieri, lo ho fatto presente ed hanno sistemato subito ed ora funiona nuovamente.
per fortuna non ho avuto guasti o altro in questo periodo, altrimenti non avrei avuto backup aggiornati con gli ultimi giorni.

per ovviare a questo problema, è possibile mettere una sorta di controllo, che se per qualsiasi motivo il backup non va a buon fine, ricevo una segnalaione?
per la segnalazione mi arrangio da solo con domoticz, ma per farlo avrei bisogno, se appunto lo script di backup termina per un qualsiasi errore di mandare un segnale del tipo:

Codice: Seleziona tutto

http://$domoticzIP:$domoticzPort/json.htm?type=command&param=switchlight&idx=$signalSwitch&switchcmd=On"


nello script sh potrei mettere come parametri:

Codice: Seleziona tutto

domoticzURL="http://$domoticzIP:$domoticzPort/json.htm?type=command&param=switchlight&idx=$signalSwitch&switchcmd=On"
domoticzIP='192.168.0.105'
domoticzPort=8085
signalSwitch=152



però come posso fare in modo che esegua il comando:

Codice: Seleziona tutto

http://$domoticzIP:$domoticzPort/json.htm?type=command&param=switchlight&idx=$signalSwitch&switchcmd=On"


solo se lo script di backup si interrompe?

grazie


Torna a “MeterN”

Chi c’è in linea

Visitano il forum: Nessuno e 10 ospiti