Backup: Unterschied zwischen den Versionen
Krikan (Diskussion | Beiträge) K (Infobox eingefügt) |
Docb (Diskussion | Beiträge) (Ergänzt um Anzeige der vorhandenen Backups im dummy) |
||
Zeile 35: | Zeile 35: | ||
define SYS_BackupRun notify SYS_Backup:* backup | define SYS_BackupRun notify SYS_Backup:* backup | ||
attr SYS_BackupRun room Server | attr SYS_BackupRun room Server | ||
######################################################################### | |||
Alternativ kann man das notify noch etwas weiter aufbohren, dann wird in der dummy-Variable angezeigt, welche Backups bereits gemacht wurden. Nicht vergessen, den Pfad einzutragen! | |||
######################################################################### | |||
## Funktion......: FHEM Backup | |||
## Besonderheiten: Anzeige der vorhandenen Backups im dummy | |||
######################################################################### | |||
SYS_Backup:* { | |||
fhem("backup");; | |||
opendir DIR, "Hier_den_Pfad_zu_Eurem_Backupverzeichnis" or die $!;; | |||
my $mybackups = "";; | |||
while(my $file = readdir DIR){ | |||
next if($file eq "." || $file eq "..");; | |||
$mybackups = $mybackups."$file<br>";; | |||
} | |||
closedir DIR;; | |||
fhem("set SYS_Backup ".$mybackups);; | |||
} | |||
######################################################################### | ######################################################################### | ||
Version vom 14. Dezember 2014, 22:51 Uhr
backup | |
---|---|
Zweck / Funktion | |
Datensicherung der Fhem-Installation | |
Allgemein | |
Typ | undefiniert |
Details | |
Dokumentation | ModUndef |
Support (Forum) | Sonstiges |
Modulname | 98_backup.pm |
Ersteller | rudolfkoenig (Forum / Wiki) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Für Datensicherungszwecke ist in Fhem der Befehl backup integriert.
Im Auslieferungszustand von fhem werden die erstellten Backups im Ordner /var/opt/fhem/Backup
abgelegt. Die Datensicherung umfasst das komplette Fhem-Verzeichnis. Damit sind alle angepassten und selbst erstellten Dateien und Icons enthalten. Das Backup wird als .tar.gz Datei abgelegt und trägt dabei im Namen das Datum und die Uhrzeit, an dem das Backup ausgeführt wurde.
Weitere Details zu dem Befehl backup können der commandref entnommen werden.
Backup manuell ausführen (Eingabefeld)
Um ein Backup zu erstellen genügt es, in der fhem Benutzeroberfläche im Eingabefeld den Befehl backup zu schreiben und mit return auszuführen (nicht den Save-Button betätigen, das würde nämlich kein Backup erstellen).
Danach findet sich eine Backupdatei in dem oben genannten Verzeichnis. In der Fhem Logdatei sollte ein Eintrag
backup done: FHEM-<Datum>_<Build>.tar.gz (<Größe> Bytes)
zu finden sein.
Backup manuell ausführen (Weboberfläche)
Der Backup-Befehl kann in die Weboberfläche als manuell ausführbare Aktion eingebunden. Das lässt sich mit dem folgenden Code in der fhem.cfg erreichen:
######################################################################### ## Funktion......: FHEM Backup ## Besonderheiten: Manuelles Backup ######################################################################### define SYS_Backup dummy attr SYS_Backup alias FHEM Backup ausführen attr SYS_Backup room Server attr SYS_Backup webCmd Ausführen define SYS_BackupRun notify SYS_Backup:* backup attr SYS_BackupRun room Server #########################################################################
Alternativ kann man das notify noch etwas weiter aufbohren, dann wird in der dummy-Variable angezeigt, welche Backups bereits gemacht wurden. Nicht vergessen, den Pfad einzutragen!
######################################################################### ## Funktion......: FHEM Backup ## Besonderheiten: Anzeige der vorhandenen Backups im dummy ######################################################################### SYS_Backup:* { fhem("backup");; opendir DIR, "Hier_den_Pfad_zu_Eurem_Backupverzeichnis" or die $!;; my $mybackups = "";; while(my $file = readdir DIR){ next if($file eq "." || $file eq "..");; $mybackups = $mybackups."$file
";; } closedir DIR;; fhem("set SYS_Backup ".$mybackups);; } #########################################################################
Backup automatisch ausführen
Die regelmäßige automatische Erstellung einer Datensicherung lässt sich mit folgenden Einträgen in der fhem.cfg erreichen:
######################################################################### ## Funktion......: FHEM Backup ## Besonderheiten: Autom. Backup ######################################################################### define NTFY_BackupRun at *23:59:00 set SYS_Backup Ausführen attr NTFY_BackupRun room Server #########################################################################
Damit wird täglich um 23:59 ein Backup erstellt.
Backup vor Update
Ist in der fhem.cfg der Eintrag
attr global backup_before_update 1
enthalten, wird vor der Durchführung eines Update erst eine Datensicherung in das festgelegte Backup Verzeichnis durchgeführt.