Seit dem Desasterumbau in meinem Rechner, habe ich jede Woche ein Backup zu laufen. Manche Daten sichere ich wöchentlich, manche monatlich. Viele Sicherungen – gerade bei den Fotos – laufen inkrementell. Trotzdem kommt es immer mal vor, dass mehrere Vollsicherungen zu einem Zeitpunkt anstehen. Ich hocke nun auch nicht den ganzen Tag vor dem Rechner, um Backups laufen zu lassen, d.h. ich breche die Sicherungsaufträge ab, weil ich sie später wiederholen möchte. Auch wenn ich den Haken bei „Sicherung wiederholen“ in meiner Backup-Software gesetzt habe, wird die Sicherung nicht wiederholt. Was zur Folge hatte, dass ich nachfragte, warum denn die Sicherung nicht wiederholt wird. Als Antwort kam: Wenn der Auftrag gestartet wurde, gilt die Sicherung als gemacht. Entschuldigung, aber häää? Ich schrieb eine Antwort, die besagte, dass ich eine erfolgreiche Sicherung möchte und nicht eine gestartete Sicherung. Nach der Aussage kam nichts mehr…
Und nun? Selbst ist der Entwickler, also starte ich ein neues Projekt: meine eigene Backup-Software. Wie auch bei meiner Plattenverwaltung zählt hier – die Software soll meine Wünsche erfüllen und wer Lust hast, kann sie gern benutzen. Also habe ich mich mal hingesetzt und aufgeschrieben, wie ich meine Backup-Software schrittweise aufbaue:
- Ich möchte einen Ordner auf ein anderes Laufwerk sichern.
- Ich möchte Quelle und Ziel nach dem Backup miteinander vergleichen und sicher sein, dass beide identisch sind.
- Ich möchte den Ordner auswählen, den ich sichern möchte.
- Ich möchte das Ziellaufwerk auswählen, wo ich hinsichern möchte.
- Ich möchte die Konfiguration beim nächsten Programmstart zur Verfügung haben.
- Ich möchte einen Hinweis erhalten, wenn das Ziellaufwerk nicht zur Verfügung steht.
- Ich möchte den Fortschritt des Auftrags kontrollieren können.
- Ich möchte den Auftrag abbrechen können.
- Ich möchte den Status des letzten Auftrags einsehen können (erfolgreich, abgebrochen, fehlerhaft).
- Ich möchte mehrere Aufträge mit Konfiguration (Quelle, Ziel) anlegen können.
- Ich möchte, dass das Backup zu einer bestimmten Uhrzeit monatlich startet.
- Ich möchte, dass der Auftrag wiederholt wird, wenn er nicht erfolgreich durchgeführt wurde.
- Ich möchte die Uhrzeit einstellen können und in meinem Auftrag hinlegt haben.
- Ich möchte das Intervall einstellen und mit dem Auftrag speichern können.
- Ich möchte auf dem Ziellaufwerk Platz sparen und die Sicherung in einer komprimierten Datei ablegen.
- Ich möchte die Anzahl meiner Sicherungen limitieren, d.h. alte Sicherungen werden entfernt.
- Ich möchte die Anzahl der verbleibenden Sicherungen in meinem Auftrag hinterlegen können.
- Ich möchte eine inkrementelle Sicherung erstellen, bevor die nächste Vollsicherung gemacht wird.
- Ich möchte die Anzahl der inkrementellen Sicherungen einstellen und mit meinem Auftrag speichern.
Klingt erstmal überschaubar, aber trotzdem steckt da eine ganze Menge Arbeit dahinter.