rkrausby
Goto Top

Löschen geändeter Dateien

Hallo zusammen.

Ich habe hier ein Problem, bei dem ich nun schon ein paar Tage herumspiele.

Hier kurz mein Problem.

Ich habe ein Quell- und ein Zielverzeichnis und beide sind syncron (z.B.: robocopy). Nun möchte ich jede Datei, welche sich im Quellverzeichnis geändert hat, im Zielverzeichnis löschen. Also egal, ob die Datei gelöscht oder geändert wude - sie muss im Zielverzeichnis geläscht werden.

Warum der Aufstand.
Es geht um ein kleines Backup mit Historie.
Der Aufbau ist ganz einfach:
Quellverzeichnis wird mit Zielverzeichnis-"orig" syncronisiert, danach werden im Zielverzeichnis-"archiv" die Verzeichnisstruktur angelegt und mit for + mklink rekursiv alle Dateien per Hardlink vervielfältigt.

Das Problem ist jetzt, dass eine weitere Synchronisation mit robocopy die Dateien im Zielverzeichnis-"orig" aktualisiert und damit auch alle Hardlinks.

Geänderte Dateien werden demnach geupdatet (inkl. aller Hardlinks) und nicht neu erzeugt (mit Verlust der Hardlinks).
Dieses gewünschte Verhalten kenne ich z.B.: aus Linux und rsync und würde es auch so in Windows benötigen.

Einziger Workaround bis her:
Alle Dateien aus Zielverzeichnis-"orig" löschen (die Hardlinks bleiben im Archiv-Verzeichnis bestehen) und die Dateien komplett neu aus dem Quellverzeichnis kopieren. Aber das dauert lange, weshalb ich eine Syncronisation, oder eben das Löschen der geänderten Dateien und anschließende Syncronisation (neu kopieren der gelöschten Dateien) vorziehen würde.

Wäre toll, wenn mir jemand den einen oder anderen Denkanstoß geben könnte.

Danke schon mal im Vorraus.
Robert Kraus

Content-Key: 281662

Url: https://administrator.de/contentid/281662

Ausgedruckt am: 28.03.2024 um 16:03 Uhr

Mitglied: 122990
122990 31.08.2015 aktualisiert um 19:45:32 Uhr
Goto Top
Wieso so unständlich wenn's das doch schon lange auch für Windows gibt. Wie unter Linux werden Backups platzsparend mit Hardlinks realisiert:
http://www.heise.de/download/rsyncbackup.vbs.html
Denn rsync läuft auch unter Windows hervorragend face-wink

Gruß grexit
Mitglied: rkrausby
rkrausby 31.08.2015 um 19:52:50 Uhr
Goto Top
Hallo grexit.

Das Programm kenn ich.
Es geht hier eher um das Lösen des Problems und weniger um eine Anwendung.
Es dient dem Lernen und dem Verstehen.

Für´s Backup selber nutzer ich andere Hard- und Software.

Aber Danke für Deinen Hinweis - das von dir Vorgeschlagene Programm läuft bei einem Bekannten sehr stabil.

Gruß
Robert Kraus
Mitglied: agowa338
agowa338 31.08.2015 um 20:23:37 Uhr
Goto Top
Als erstes erstellst man hierfür einen Hash der Zieldatei [bei vielen Dateien, eventuell eine "Datenbank" (oder Textdatei mit Zuordnung)]
CertUtil -hashfile C:\Dokumente\Wichtig.docx MD5
Anschließend können die Hashes verglichen werden und entschieden werden, ob die Datei übersprungen oder gelöscht wird.
Und das Ganze packt man dann in eine Schleife, die durch alle Dateien und Ordner läuft.

P. S. Eventuell sollte eine andere Anwendung zum Hashen versendet werden, die eventuell auch ganze Verzeichnisse auf einmal hashen kann. Aber CertUtil ist das einzige, was Windows in diese Richtung ohne Zusatzsoftware beherrscht.
Mitglied: rkrausby
rkrausby 31.08.2015 um 20:41:03 Uhr
Goto Top
Hallo agowa338

Diesen Befehl kannte ich noch gar nicht.
Danke für die Info.

Gruß
Robert
Mitglied: 122990
122990 31.08.2015 aktualisiert um 20:52:39 Uhr
Goto Top
Aber CertUtil ist das einzige, was Windows in diese Richtung ohne Zusatzsoftware beherrscht.
Mit Powershell kannst du das hashen schon seit Vista out of the box face-wink
Dupes mit anderem Dateinamen finden und in "HardLinks" umwandeln (W2k12R2, NTFS)
und noch tausend Dinge mehr als mit Batch.
Mitglied: agowa338
agowa338 31.08.2015 um 21:00:47 Uhr
Goto Top
Um Powershell mache ich irgendwie immer noch einen Bogen, obwohl ich es mir schon lange vorgenommen habe.
Dies liegt unter anderem daran, dass die Script Ausführung in der Standardeinstellung deaktiviert ist und daran, dass ich die Syntax noch nicht richtig verstanden habe.
Aber ich muss zugeben, dass es wirklich sehr mächtig ist......
Mitglied: rkrausby
rkrausby 01.09.2015 um 15:58:57 Uhr
Goto Top
Erstmal Danke für die Tipps.
Ich verfolge jetzt einen Weg und werde mein Ergebnis hier definitiv noch posten (bitte gebt mir ein paar Tage), aber erstmal setze ich dieses Thema auf gelöst.

Auf jeden Fall ein rießiges Danke für die Anregungen.
Gruß
Robert Kraus