Wie in einem anderen Beitrag beschrieben wurde ein Ubiquiti Unifi Controller auf einem Raspberry Pi installiert und läuft seitdem. Damit nun die automatisch erstellten Datensicherungen im Falle eines Ausfalls der SD-Karte nicht verloren sind, sollten diese auf einen (entfernten) Windows-Server synchronisiert werden.
Mein Mittel der Wahl für solche Jobs ist WinSCP, das sich ganz wunderbar automatisieren lässt. Kurz und knackig sieht das Skript wie folgt aus:
@echo off rem Konfiguration rem Arbeitsverzeichnis festlegen set WorkingDir=C:\UniFi-Controller-Backup cd %WorkingDir% rem RaspberryPi set host=<IP-Adresse-des-Raspberry-Pi> set type=scp set username=pi set password=<Kennwort> rem WinSCP-Skript erstellen echo option batch abort > script.txt echo option confirm off >> script.txt echo open %type%://%username%:%password%@%host% >> script.txt echo synchronize local -resumesupport=on -delete %WorkingDir%\backup /var/lib/unifi/backup >> script.txt echo close >> script.txt echo exit >> script.txt rem WinSCP ausfuehren del /q winscp.log WinSCP\WinSCP.com /script=script.txt /log=winscp.log > winscp-console.log if %errorlevel%==1 echo Fehler bei "WinSCP" > error.txt & exit rem Aufraeumen del /q script.txt
Wichtig: Damit man auf das Datenverzeichnis des UniFi Controllers zugreifen kann, muss man zunächst die Berechtigungen anpassen. Es genügt ein lesender Zugriff, der am Beispiel des pi-Benutzers wie folgt erteilt wird:
sudo usermod -a -G unifi pi
Es wird also schlicht der Benutzer “pi” der Gruppe “unifi” hinzugefügt. Ab der nächsten Anmeldung via ssh, scp, usw. kann man auf den Pfad zugreifen.
Apropos Pfade (nur zur Info):
“/usr/lib/unifi/data” ist ein Link zu “/var/lib/unifi”.
Ein paar Erklärungen:
Beim Aufruf der WinSCP.com werden tatsächlich zwei Protokolle geschrieben. Für auf die Schnelle mal nachschauen finde ich die Konsolenausgabe praktischer. Für Details, vor allem im Fehlerfall, ist dann das eigentliche Log interessanter.
Im Fehlerfall wird eine Datei “error.txt” erstellt, auf deren Vorhandensein z.B. mit Monitoring-Tools geprüft werden und in Folge alarmiert werden kann. Man könnte an dieser Stelle auch ein smtpsend.exe einbauen um direkt eine Mail zu erhalten.
Quellen:
datamate – SPEICHERPFAD DES UNIFI CONTROLLER BACKUPS ÄNDERN
findanyanswer – Where are UniFi controller backups stored?
How-to Geek – Add a User to a Group (or Second Group) on Linux
Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.
Schreibe einen Kommentar