[HowTo] Automatisches Backup der CONF Dateien mit Versand per email

betateilchen

Grandstream-Guru
Mitglied seit
30 Jun 2004
Beiträge
12,882
Punkte für Reaktionen
0
Punkte
0
Hallo allerseits !

Im Rahmen meines Asterisk-Kurses kamen in den letzten Tagen mehrere Anfragen, ob man eine Möglichkeit hat, ein automatisches Backup der CONF Dateien des Asterisk zu machen und diese per Mail an die eigene email-Adresse zu schicken.

Frederik schrieb:
Nichts leichter als das ...

Ich gehe von der im Kurs verwendeten Konfiguration auf vServer aus und beziehe mich wieder auf Debian. Die vServer beinhalten von Haus i.d.R. einen Mailserver, darum müssen wir uns nicht kümmern.

  1. wir installieren in zusätzliches Software-Paket
    Wir brauchen das Paket "mime-construct" da wir eine Mail mit Anhang verschicken wollen. Also machen wir auf der Systemconsole unseres vServers ein
    Code:
    apt-get install mime-construct
  2. Wir erstellen ein Backup Skript inkl. Mailversand

    Wir brauchen ein Skript, das 2 Aufgaben erfüllt: a) Verpacken des Verzeichnis /etc/asterisk in ein Archiv, b) verschicken dieses Archivs per email

    Hierzu erstellen wir uns in /usr/local/bin folgendes Skript (bei mir heißt die Datei confbackup und geben ihr die entsprechenden Ausführungsrechte:

    Code:
    # cd /usr/local/bin
    # touch confbackup
    # chmod 755 confbackup

    Diese Datei bekommt folgenden Inhalt:

    Code:
    cd /root
    tar -cf asteriskconf.tar /etc/asterisk/*
    bzip2 asteriskconf.tar
    
    cat asteriskconf.tar.bz2 | mime-construct --to [b]<hier die Empfänger-Emailadresse eintragen>[/b] --subject "CONF Backup Asterisk" \
        --string "Backup" --attachment `basename asteriskconf.tar.bz2` \
        --type application/bzip2 --file -
    
    rm asteriskconf.tar.bz2

    Die Funktionsfähigkeit des Skripst kann auch manuell getestet werden:

    Code:
    # /usr/local/bin/confbackup

    Dann sollte an der angebenen email-Adresse eine Mail mit angehängtem Archiv aufschlagen.
  3. Wir erstellen einen CRON Job zur automatischen, regelmäßigen Ausführung

    Bei mir läuft das Skript jede Nacht um 04:03 Uhr, da wollen wir nun in unsere crontab eintragen (das ist die Tabelle, in der zeitgesteuerte Aufgaben verwaltet werden)

    Code:
    # crontab -e

    Daraufhin sollte sich ein Editorfenster melden, in dem wir folgende Zeile einfügen und mit der Enter-Taste abschließen:

    Code:
    3 4 * * * /usr/local/bin/confbackup

    Nach dem Abspeichern der Datei sollte eine Meldung der Form "New crontab installed" oder ähnlich erscheinen.

Das wars - nun bekommen wir jede Nacht eine email von unserem Asterisk mit den vorhandenen CONF-Dateien :D


xUnd Pickeldi ging mit Frederik nach Hause ...
 
Kostenlos!

Statistik des Forums

Themen
248,887
Beiträge
2,303,977
Mitglieder
378,565
Neuestes Mitglied
BenGradish