Update – Programm: easyLiveSync

[singlepic id=1076 w=128 h=128 mode=web20 float=left]Ich habe mal etwas in meinen Projekten gekramt und ein Programm, welches ich mal f?r unterschiedliche Bekannte geschrieben habe, herausgepickt. Ursache war erneut eine Anfrage eines weiteren Bekannten, ob es nicht möglich ist, Dateien und Verzeichnisse in „Echtzeit“ auf ein Ziel der Wahl zu synchronisieren, damit im Ernstfall eine Wiederherstellung dieser Dateien möglich ist. Ich bitte hier an dieser Stelle das Wort „Ernstfall“ nicht zu ernst zu nehmen, denn 100%ige Sicherheit gibt es nicht – auch nicht bei meinen Anwendungen 😉

Es passiert viel zu oft, dass Dateien zB. von Netzlaufwerken irrt?mlich gelöscht werden. Da Windows keinerlei Netzlaufwerk-Papierkörbe kennt, ebenso wenig Mac OS X bei Zugriff auf SMB-Shares, ist dieses Programm vor 2 Jahren entstanden. Es synchronisiert die Quelle zum Ziel (zB. ein eigener „Papierkorb“ oder Backup-Ordner auf dem Netzwerk) und verweilt zur Laufzeit im Hintergrund, ?berpr?ft die Zugriffe auf die jeweiligen Dateien und Ordner und synchronisiert das Ganze dementsprechend. Wird eine Datei erzeugt, wird diese auch am Ziel umgehend erzeugt. Wird eine Datei geändert, geschieht dies auch am Ziel. Beim Löschen und Umbenennen passiert ebenso das Gleiche am Ziel. (Löschen kann in dieser Version abgeschaltet werden).

Sicherlich gibt es gen?gend Backup-Programme – kostenfrei und käuflich – aber diese halfen nicht bei oben genanntem Problem, wenn eine Datei erzeugt, aber Minuten oder Stunden später irrt?mlich, durch DAU-Verhalten oder Layer-8 Problem, gelöscht wurden. Normale Backup- oder Syncprogramme laufen entweder immer nach einer Zeit X in Minuten oder gar nur einmal täglich.

Ich habe das Programm noch einmal auf die Schnelle etwas bearbeitet (Men?s, Dialoge) und diese ebenso einem Test unter Windows XP und Windows Vista unterzogen. Voraussetzung ist .Net Framework 3.5, aber bei Bedarf kann ich auch das Ganze f?r 2.0 anbieten.

Technischer Hintergrund: Das Ganze basiert auf der FileSystemWatcher-Klasse des .Net Frameworks, welches Created, Changed, Renamed und Deleted-Ereignisse verarbeitet und diese Information an das Ziel weitergibt. Es ist einstellbar, ob Deleted-Ereignisse verarbeitet werden sollen, oder nicht. Ebenso sind mehrere Sync-Jobs parallel möglich, um mehrere Ordner zu ?berwachen und zu sichern.

Es wird dringend davon abgeraten, eine komplette Festplatte (zB. Laufwerk C:) ?berwachen zu lassen. Die Auslagerungsdatei, der Windows-, wie auch weitere systemrelevante Ordner, schreiben gern und viel in ihre Dateien und Ordner herum. Das w?rde das Programm und somit den Rechner nur unnötig ausbremsen und f?r eventuell daraus resultierende „Schäden“ ?bernehme ich definitiv keine Haftung. Apropos Haftung: Die Nutzung, der hier kostenfrei zur Verf?gung gestellten Anwendung, unterliegt eigener Verantwortung. Das Programm, wie angeboten, ist „as is“, beinhaltet mit Sicherheit den einen oder anderen Fehler und eine 100%ige Funktion kann nicht gewährleistet werden. Das Programm liegt ebenso in den Original-Quellen vor, damit der geneigte Nutzer oder Programmierer sich der Basis annehmen und dann seine eigene Anwendung daraus stricken kann.

Update: Bug bereinigt – in bestimmten Konstellationen wurde das Ziel nicht korrekt geschrieben. Vornehmlich, wenn die Quelle im Vergleich zum bestehenden Ziel kleiner war. Programm + Quellcode in den Links wurden aktualisiert.

Das Programm startet derzeitig immer im Fenster-Modus. Optionen, um dies zu ändern, existieren noch nicht. Ein Doppelklick auf das Symbol in der Tray (das Teil neben der Uhr) blendet das Fenster aus bzw. wieder ein. Die Anwendung kann nur ?ber das Tray-Symbol (rechte Maustaste – Beenden) beendet werden – oder aber, indem es mit dem Task-Manager abgeschossen wird – je nachdem, wie man es gern hat. Über Men?punkt „Job -> Anlegen“ kann ein Sync-Job angelegt werden. Um einen Job zu bearbeiten, einfach rechte Maustaste auf den gew?nschten Job in der Liste und dann auf „Job ändern“ klicken. Ebenso verhält es sich, wenn ein Job gelöscht werden soll. 

Nachdem ein Job angelegt bzw. geändert wurde (oder aber mit definierten Jobs nach Start von easyLiveSync) wird pro Job jeweils abgefragt, wie weiter vorzugehen ist (Dies wird in einer späteren Version mit hinterlegbaren Job-Optionen geändert werden). Es stehen 3 Möglichkeiten zur Wahl:

  1. Zielordner (alles, aber auch wirklich alles darin) löschen, Quelle in Ziel kopieren und danach das Ganze live ?berwachen,
  2. Zielordner nicht löschen (wenn zB. schon einmal gesynced wurde), Quelle (neue oder geänderte Dateien und Ordner) werden auf das Ziel kopiert und danach das Ganze live ?berwacht, oder
  3. nichts kopieren, sondern die Änderungen von Quelle auf Ziel ?bertragen (hier kann es bei Situationen, wo noch niemals vorher das Ziel gef?llt wurde, zu Problemem kommen – sprich Error).

Mehr gibt es eigentlich nicht zu wissen. 😉

F?r Verbesserungsvorschläge, dumme, negative, wie auch positive Kommentare, bin ich offen – und mit Sicherheit gibt es etwas zu verbessern (zB. Dateifilter, Überpr?fung wann eine Datei an Quelle und Ziel gleich ist usw.)

Das könnte Dich auch interessieren...

3 Antworten

  1. pixel sagt:

    das teste ich mal 🙂

    • FireFox sagt:

      Nur zu. Einfach testen und ausprobieren. Wie gesagt, entstand das Programm „damals“ aus der Not einiger Bekannten bzw. Kunden heraus und verrichtete seinen Dienst bisher fast einwandfrei. Vorstellbar ist das Ganze bei Windowssystemen auf dem Server, welcher Daten als Kopie „live“ nach Änderungen wegkopieren/wegsichern soll. Das impliziert definitiv nicht, dass man herkömmliche Backups vernachlässigen soll, hilft aber dabei, schnell auf bestimmte gelöschte Daten zugreifen zu können.
      Ich könnte mir vorstellen, dass bestimmte Aktionen noch konfigurierbar sind, oder …. ach, ich lass mich überraschen, was ggfs. für ein Feedback kommt. 😉

  1. 3. April 2009

    […] Mail erreichte mich heute, in der ich gefragt wurde, wie man zB. mein Programm easyLiveSync, oder eigene Implementierungen dazu bewegen könnte, auf Netzlaufwerke bzw. Freigaben zuzugreifen, […]

Schreibe einen Kommentar zu FireFox Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.