ich habe "eigentlich auf jedem Server" neben dem eigentlichen Backup eine rudimentäre Datensicherung, die mir ein paar Konfigurationsverzeichnisse und die MariaDB-Datenbanken wegspeichert.
Hier, so sieht das z.B. auf meinem Icinga2-Testsystem aus:
Code: Alles auswählen
#!/bin/sh
before=$(date +%s)
BU_BASE=/root/scripte
BU_ZIEL=/root/tagessicherung
ERGEBNIS="Keine besonderen Vorkommnisse:"
cd $BU_BASE
cat $BU_BASE/backup_opener.txt > $BU_BASE/backup.txt
echo "Sichere /etc/" >> $BU_BASE/backup.txt
echo "Siehe $BU_BASE/etc.txt" >> $BU_BASE/backup.txt
echo "" >> $BU_BASE/backup.txt
cp -a --strip-trailing-slashes --parents -v /etc/ $BU_ZIEL 2>&1 > $BU_BASE/etc.txt
if [ "$?" -ne "0" ]; then
ERGEBNIS="Problem bei Sicherung:"
fi
echo "Sichere /var/lib/icinga2/" >> $BU_BASE/backup.txt
echo "Siehe $BU_BASE/var-lib-icinga2.txt" >> $BU_BASE/backup.txt
echo "" >> $BU_BASE/backup.txt
cp -a --strip-trailing-slashes --parents -v /var/lib/icinga2/ $BU_ZIEL 2>&1 > $BU_BASE/var-lib-icinga2.txt
if [ "$?" -ne "0" ]; then
ERGEBNIS="Problem bei Sicherung:"
fi
echo "Erstelle ein dump der Maria-DB icinga2" >> $BU_BASE/backup.txt
mysqldump --opt -umariadb -geheim icinga2 > $BU_ZIEL/icinga2.sql
if [ "$?" -ne "0" ]; then
ERGEBNIS="Problem bei Sicherung:"
fi
ls -h $BU_ZIEL/icinga2.sql -al >> $BU_BASE/backup.txt
echo "" >> $BU_BASE/backup.txt
echo "Erstelle ein dump der Maria-DB icingaweb2" >> $BU_BASE/backup.txt
mysqldump --opt -umariadb -geheim icingaweb2 > $BU_ZIEL/icingaweb2.sql
if [ "$?" -ne "0" ]; then
ERGEBNIS="Problem bei Sicherung:"
fi
ls -h $BU_ZIEL/icingaweb2.sql -al >> $BU_BASE/backup.txt
echo "" >> $BU_BASE/backup.txt
after=$(date +%s)
echo "Gesamtlaufzeit der Datensicherung: $((after - $before)) Sekunden. Geil fix, oder? :-)" >> $BU_BASE/backup.txt
cat $BU_BASE/backup.txt | mail -a"Reply-To: anmich@e-mail.xxx" -s"$ERGEBNIS Tagessicherung icinga2-Server" anmich@e-mail.xxx
Heute ist mir aufgefallen, dass sich bei Kopierfehlern der Betreff von der E-Mail nicht ändert wenn es Probleme gibt. Wenn das cp (oder das mysqldump) fehlschlägt, beginnt der Betreff der E-Mail nach wie vor mit ""Keine besonderen Vorkommnisse:" (man merkt: Ich war mal 12 Monate bei der Bundeswehr).
Warum ist das so? Setze ich den Errorlevel "irgendwie" mit der Umleitung der Ausgabe zurück? Oder kann ich das Ergebnis von cp bzw. mysqldump gar nicht über $? abfragen?
Gruß,
Jörg