To create new wiki account, please join us on #znc at freenode and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.

ZNC Backup/de

From ZNC
Jump to: navigation, search

Hier wird beschrieben, wie man die ZNC-Konfiguration sichert und sich per E-Mail einmal wöchentlich zuschicken lässt.

Benötigte Software[edit]

p7zip 
Very high compression ratio file archiver
tar 
A GNU file archiving program (dürfte standardmäßig bereits auf fast jedem Linux und Unix Betriebssystem sein)
SendEmail 
http://caspian.dotconf.net/menu/Software/SendEmail/ (habe ich noch in keiner Linux Distribution gefunden)

Backup-Skript[edit]

Nach der Installation wird ein kleines Skript im Hauptverzeichnis des Users angelegt.

vi znc-sicherung.sh

Dieses wird mit folgenem Inhalt gefüllt:

#!/bin/bash
DATEI1=$(date +%Y-%m-%d)_znc_backup.tar
DATEI2=$(date +%Y-%m-%d)_znc_backup.tar.7z
DATUM=$(date +%Y-%m-%d)
USER=znc
sevenzp=a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on -mhe=on -p=Pa7Sw0r7
MAILADRESSE1=deine{at}email.de
DIR=/home/$USER/.znc
/usr/bin/tar -cvf $DATEI1 $DIR
/usr/bin/7za $sevenzp $DATEI2 $DATEI1
/usr/bin/sendEmail -f $USER@dein.host -u ZNC-Backup-$DATUM -m ZNC Backup vom $DATUM -a $DATEI2 -t $MAILADRESSE1
rm -f $DATEI1 $DATEI2

Hierbei ist zu beachten, dass das Skript an den User angepasst werden muss, unter dem znc läuft. Folgende Zeilen müssen dabei bearbeitet werden:

USER=
sevenzp= (nur das Passwort am Ende)
MAILADRESSE1=
/usr/bin/sendEmail -f $USER@dein.host

Bitte achtet auf die Zeile 7za $sevenzp $DATEI2 $DATEI1. Bei manchen Distributionen heißt das 7zip-Binary 7z statt 7za. Daher gegebenenfalls auch dies abändern.

Wenn man nicht über 1 GB an RAM verfügt, muss man gegebenenfalls die Komprimierungsrate herunterstellen. Dies geschieht mit dem Parameter -mx=X in der sevenzp=...-Zeile. X bezeichnet dabei die Komprimierungsrate, die zwischen 0 und 9 sein darf, wobei 0 keine Komprimierung bedeutet.

Danach muss das Script ausführbar gemacht werden:

chmod a+x znc-sicherung.sh

Jetzt ist es an der Zeit, das Script einmal manuell zu testen:

./znc-sicherung.sh

Wenn alles klappt, geht es weiter mit der Crontab, ansonsten müsst ihr noch einmal das Skript nach Fehlern durchsuchen.

Crontab[edit]

Euer crontab könnt ihr wie folgt bearbeiten:

crontab -e

Fügt dort diese Zeile ein:

40 0  * * 4 cd /home/znc; ./znc-sicherung.sh >/dev/null 2>&1

Meine Crontab sieht folgendermaßen aus:

* * * * *   cd /home/znc/znc/bin; ./znc >/dev/null 2>&1
40 0  * * 4 cd /home/znc;         ./znc-sicherung.sh >/dev/null 2>&1

Jede Minute wird überprueft, ob ZNC läuft, wenn nicht, wird ZNC neu gestartet. Die zweite Zeile startet das Backup-Skript einmal in der Woche jeweils Donnerstags (4) um 0:40 Uhr (40 0).