Autor Thema: Neues Modul: 98_avbackup: FHEM Backup für Linux und Windows  (Gelesen 312 mal)

Offline anvoes

  • New Member
  • *
  • Beiträge: 8
Ich habe ein Modul 98_avbackup.pm geschrieben, welches rückwärtskompatibel zu 98_backup.pm und dessen backup Kommando das Kommando avbackup zur Verfügung stellt.

Der Hauptgrund für die Entwicklung war, dass es kein funktionierendes Backup Kommando für FHEM unter Windows gibt und da ich sehr dankbar für die FHEM Software bin, wollte ich zumindest anbieten etwas zurückgeben zu können.

Wesentliche Merkmale:
  • Rückwärtskompatibel zu bestehenden backup Kommando
  • Unterstützt Linux und Windows
  • Verwendung von 7Zip/tar auf Linux und 7Zip auf Windows
  • Durch die Verwendung von 7Zip können auf Windows sowohl ZIP Archive als auch TAR (.tar.gz) Archive erstellt werden. Das gleiche gilt natürlich auch für Linux, falls dort 7Zip verfügbar ist und verwendet wird.
  • Vollständige Signalisierung des Backupablaufs durch trigger auf global (Meldungen: Status, Pfad des erstellten Archivs, Pfad der Logdatei, benötigte Zeit für das Backup und Fehlermeldung, falls ein Fehler auftrat)
  • Möglichkeit das Backupkommando zusätzlich zu den Attributen auch über Argumente für das Kommando zu parametrisieren
  • Ausführung Backup im Vordergrund oder Hintegrund - wie bisher auch
  • Automatisches Generieren eines Dummy Devices zur Darstellung des Backupverlaufs einschliesslich des Notify und Log Devices.
  • Dateinamen und Verzeichnisse mit Leerzeichen werden korrekt behandelt.
  • Das Archiv enthält nur relative Pfadnamen. Falls alle zu sichernde Dateien unter modpath liegen, dann relativ zu modpath, ansonsten relativ zu '/' bzw. 'C:\' oder auf welchem Volume FHEM auch liegt. Einschränkung Windows: falls Dateien auf verschiedene Volumes liegen, kann das Backup nicht erstellt werden, da man sonst absolute Pfadnamen verwenden müsste.
  • Einstellungsmöglichkeit für die zeitabhängige Benennung von Archivnamen und Verzeichnisstruktur im Backupverzeichnis. Z.B. kann eingestellt werden, dass der Dateiname nur den Zeitstempel des Tages enthält. Wenn 7Zip im ZIP Modus verwendet wird, werden für alle Backups während eines Tages lediglich jeweils die gänderten Dateien ausgetauscht und nicht jedesmal das Archiv neu erstellt.
  • Die Datei 98_avbackup.pm enthält eine ziemlich vollständige POD/HTML Dokumentation für alle Details.
  • ... noch einige andere Sachen die in der Doku beschrieben sind.

Ich habe sowohl auf Windows als auch auf Linux getestet und kann aktuell keine Fehler mehr finden.

Falls jemand Interesse hat es einfach mal auszuprobieren - ich habe die beiden Dateien, die benötigt werden (98_avbackup.pm und avbackup.pl) diesem Beitrag angehängt.
Die beiden Dateien müssen lediglich nach ${modpath]/FHEM kopiert werden und danach entweder "reload 98_avbackup.pm" oder "shutdown restart" ausgeführt werden.

Danach kann das Backup mit dem Kommando avbackup angestoßen werden.

Aktuell werden per Default automatisch die Devices für den Status erstellt (die Devices heißen FHEM_Backup, FHEM_Backup_EVENT und FHEM_Backup_LOG) und auch ein automatisches Sichern der Config veranlasst. Die Devices befinden sich dann im Raum "FHEM Backup". Dieses Verhalten kann natürlich auch abgeschalten werden. Die Devices können natürlich jederzeit gefahrlos gelöscht werden.

Hoffe, ihr stolpert nicht sofort über einen Fehler, den ich doch übersehen habe oder bei mir noch nicht produzieren konnte ;)

Andreas

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1134
  • 🏠⚙️💡🛠📱
Antw:Neues Modul: 98_avbackup: FHEM Backup für Linux und Windows
« Antwort #1 am: 22 November 2019, 08:16:31 »
Moin Andreas,
hab dein neues Modul mal getestet und soweit keine Auffälligkeiten festgestellt  :)

Tolle Arbeit!
VG Sebastian
Proxmox, nextcloud, fhem mit: deconz, CUL via ser2net, SONOS, alexa-fhem, homebridge, TelegramBot mit msgDialog, livetracking, Testumgebung: docker pull fhem/fhem

 

decade-submarginal