Ich hole kurz ein wenig aus um zu erläutern, wie es überhaupt dazu kam ein Backup Programm für ein Synology NAS System zu schreiben.
Bis zum DiskStation Manager 5.x gab es ausschließlich eine dateibasierte Datensicherung die auf rsync beruhte. Mit Einführung von DiskStation Manager 6 erblickte auch Hyper Backup das Licht der Welt, nur mit dem Unterschied, das man anfänglich keine dateibasierte- sondern ausschließlich eine datenbankgestützte Datensicherung anlegen konnte. Man war - und ist es bis heute - darauf angewiesen, Backup-Inhalte nur noch über eine, von Synology bereitgestellte Software einzusehen. Wie gesagt, in den Anfängen gab es nur diese Option, was vielen Benutzern - darunter auch mir - ziemlich sauer aufgestoßen ist. Ich denke, das dank des großen Widerstandes der Community es letztendlich dazu geführt hat, das Synology die dateibasierte Datensicherung auf Basis von rsync wieder implementiert hat. In der Zeit dazwischen habe ich damals dazu aufgerufen, ein dateibasiertes Backup Programm ins Leben zu rufen… so entstand dann Ultimate Backup.
Mit Ultimate Backup war es wiederum möglich, nicht nur einfache dateibasierte Datensicherungen durchzuführen, sondern diese auch in verschlüsselten Ordnern auf Basis von ecryptfs zu deponieren, also mit der Technologie, wie Synology heute noch freigegebene Ordner verschlüsselt. Des Weiteren konnte man ein Versionsbackup nach dem Generationenprinzip unter Verwendung von Hardlinks erstellen, was somit ebenfalls dateibasiert und nicht datenbankgestützt erfolgte. Zu guter letzt konnte man sogar ein versioniertes Backup, verschlüsselt auf einem externen Datenträger ablegen, wobei Ultimate Backup den verschlüsselten Ordner eigenständig einhängen und trennen konnte. Es gab aber noch viele weitere Dinge, wie das automatische einrichten von SSH Verbindungen, eine autostart Funktion um Backupaufträge durch einstecken eines extern an die DiskStation angeschlossenen Datenträgers automatisch auszuführen. Ich habe bestimmt noch einiges vergessen, was den Funktionsumfang von Ultimate Backup betrifft… aber es war wirklich, wie der Name schon sagt…ultimativ.
Und dann kam DSM 7… und all die Funktionen, Möglichkeiten und Vorteile waren mit einem Schlag vernichtet. Zu restriktiv waren die Beschränkungen, zu hoch die Auflagen an 3rdParty Developer, systemnahe Befehle ausführen zu können. Mit Einführung von DSM 7 wurde somit das Ende von Ultimate Backup eingeläutet. Genau aus diesem Grund habe ich angefangen Basic Backup zu entwickeln, einfach weil ich es nicht hinnehmen wollte, das all das, was wir einst geschaffen hatten, mit einem Schlag für die Tonne war. Seit dem versuche ich, wenigstens ein paar elementare Dinge zurück zu holen, die mir persönlich sehr am Herzen gelegen haben.
So und nun komm ich zu den Vor- und Nachteilen.
Aktuell sehe ich die Vorteile von Basic Backup hauptsächlich darin, das man neben einer einfachen dateibasierten Sicherung, auch ein Versionsbackup auf Dateiebene anlegen kann. Ebenso halte ich die vor kurzen erst von mir implementierte AutoPilot Funktion für einen weiteren Vorteil gegenüber Hyper Backup. Über die integrierte USB/SATA-AutoPilot Funktion können nämlich sowohl Datensicherungsaufträge als auch sonstige Bash-Scripte automatisch beim Anschluss eines externen USB/SATA-Datenträgers ausgeführt und bei Bedarf im Anschluss wieder automatisch ausgeworfen werden. Wie weiter oben bereits erwähnt, lehnt sich AutoPilot an die 3rdParty App autorun an, die, soweit ich weiß, seit DSM 7 auch nicht mehr richtig funktioniert.
Aber ja... es gibt auch Nachteile… und davon sogar jede Menge. Denn das meiste von dem was Ultimate Backup noch konnte, kann Basic Backup nicht mehr und wird es auch nicht mehr können. Das ist aber hauptsächlich DSM 7 geschuldet. Aber gut. Einer der Hauptnachteile ist wohl eine fehlend Restore Funktion. Ebenfalls kritisch sehe ich, das teilweise Dateirechte und Besitzrechte verändert werden, wenn man ein SSH Push Backup auslöst und man nicht als root am Remote Server angemeldet ist. Ein weiterer Nachteil ist, das man mit Basic Backup nicht mehr auf die Ordnerstrukturen von Remoteservern zugreifen kann, da man über die GUI keine SSH Verbindungen mehr herstellen kann. Man kann über die GUI nicht mal einen Ping abfeuern um zu schauen, ob der Remote Server online ist. Aber…
Mir geht es mittlerweile aber nicht mehr darum, mich mit Hyper Backup zu messen, so wie es in den Anfängen vielleicht noch war. Denn es liegt auf der Hand, das ich an das Level von Hyper Backup nicht mehr herankommen werde. Ich preise mein System auch garnicht groß an, binde es niemandem auf die Nase oder mache einen großen hehl daraus. Letzenendes tu ich das alles nur, weil ich Bock darauf habe… ich muss niemanden etwas beweisen und ich erhebe keinen Anspruch auf Vollkommenheit... auf Perfektion vielleicht aber das ist wieder ein anderes Thema.
Ich hoffe das war ehrlich genug für dich und du kannst mit meinen Ausführungen etwas anfangen. Ich würde mich jedenfalls freuen, wenn du dir mein Programm zumindest einfach mal anschaust um mir ein positives oder negatives Feedback geben zu können. Ich kann nur besser werden, wenn ihr mir dabei helft.
Tommes