fremder
Goto Top

Inkrementelles Backup mittels robocopy

Hallo Admins,

ich habe mir eine Möglichkeit ausgedacht, mir der ich ein inkrementelles Backup mit robocopy durchführen kann. Jedoch dauert das sehr lange. Hier erst mal meine Vorgehensweise:

Voraussetzung: ein vorher ausgeführtes Vollbackup nach d:\\backup\\%date%

1. Weiteres Vollbackup nach d:\\backup\\Inkrement\\%date%
2. Verschieben der sich nicht geänderten Daten von d:\\backup\\Inkrement\\%date% nach d:\\backup\\%date%. Damit bleiben nur die neuen bzw. geänderten Daten im neuen Ordner erhalten.
3. Fertig

Nun dauert das natürlich sehr lange. Denn es muss ja nicht nur ein Vollbackup durchgeführt werden, sondern sogar noch der Verschiebevorgang passieren.

Daher wollte ich gerne wissen, ob jemand noch eine andere Möglichkeit kennt, Inkremente zu erzeugen. Es muss auch nicht unbedingt mit robocopy sein. Von mir aus kann auch ein anderes Programm das Inkrement erzeugen, das dann von robocopy in Zielverzeichnis geschoben wird.

Für Anregungen und Lösungen bin ich Euch sehr dankbar.

Viele Grüße
Manuel

Content-ID: 46904

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

Ausgedruckt am: 26.11.2024 um 16:11 Uhr

bastla
bastla 16.12.2006 um 17:44:02 Uhr
Goto Top
Hallo fremder!

Robocopy bietet die Schalter
/m für inkrementelles Backup (seit der letzten Sicherung veränderte/neu erstellte Dateien) bzw
/a für differentielles Backup (seit der letzten Vollsicherung veränderte/neu erstellte Dateien).

HTH
bastla
fremder
fremder 16.12.2006 um 19:18:03 Uhr
Goto Top
Danke Dir!

Das werde ich mal ausprobieren.
Biber
Biber 18.12.2006 um 18:08:45 Uhr
Goto Top
Moin fremder,

Das werde ich mal ausprobieren.

...und danach bitte Haken setzen oder posten: "Klappt leider nicht..."

Danke
Biber
[Edit 19.12.2006]
- Beitrag wurde vom Threadowner auf "Gelöst" gesetzt.
- Beitrag geschlossen.
Thx @fremder
[/Edit 19.12.2006]
[Edit 16.1.2007]
Auf Wunsch des Threadowners wieder geöffnet.
[/Edit 16.1.2007]
fremder
fremder 16.01.2007 um 11:07:05 Uhr
Goto Top
es hat sich leider herausgestellt, dass die Lösung des Problems mit der Option /A bzw. /M doch nicht möglich war.

Das Auswählen der zu kopierenden Dateien passiert für das Inkrement beim Abgleich mit dem letzten Vollbackup.

Dann ist die Quelle der Arbeitsordner und der Zielordner der Vollbackupordner. Die Folge davon ist aber, dass der Vollbackupordner nun nach Ausführen der Batchdatei die neuen Dateien enthält.

Nur das ist schlecht, da robocopy die Änderungen im Vollbackupornder durchführt. Dadurch kann nicht mehr auf den Stand des Vollbackups zurückgegriffen werden.

Besser ist es doch, wenn die zu kopierenden Dateien in einen eigenen Ordner umgleitet werden.

Wie geht das? Wie kann ich den eigentlichen Kopiervorgang in einen eigenen Ordner umleiten.

Danke an alle
Manuel
bastla
bastla 16.01.2007 um 17:33:28 Uhr
Goto Top
Hallo Manuel!

Deinen Überlegungen kann ich nicht ganz folgen, daher vielleicht alternativ dazu, was mir auf- bzw eingefallen ist:

Beim Erstellen eines Vollbackups mit Robocopy fehlt eigentlich nur ein wichtiges Detail - das Rücksetzen des Archiv-Bits (bei Robocopy "Archive attribute" genannt) für die kopierten Dateien (Quelldaten). Danach wären seit diesem Backup veränderte Dateien am wieder gesetzten Archiv-Bit zu erkennen - darauf basieren die oben angeführten Schalter /m und /a, wobei

mit /m für die gesicherten Dateien das Archiv-Bit wieder rückgesetzt wird, wodurch diese als "gesichert" gekennzeichnet sind und daher bei der nächsten Inkrement-Sicherung nur neuerlich veränderte Dateien gesichert werden,

hingegen mit /a alle veränderten Dateien gesichert werden, aber die Kennzeichnung "gesichert" nicht erhalten, und somit bei der nächsten Sicherung neuerlich kopiert werden = differenziell.

Als Workaround könntest Du nach einer Vollsicherung gezielt für alle gesicherten Dateien das Archiv-Bit per Batch rücksetzen lassen - die Performance einer solchen Lösung müsstest Du testen, indem Du zB mit
echo %time%
attrib -a D:\Daten\*.* /s /d
echo %time%
das Archiv-Bit aller in D:\Daten und unterhalb liegenden Dateien / Ordner rücksetzen lässt (die %time%-Ausgabe als "Stoppuhr").

Falls dieser Weg nicht zu langsam ist, wäre die Vorgangsweise daher:
  • Vollsicherung mit Robocopy, Schalter /b ("Backup mode"), danach attrib -a für alle kopierten (Arbeits-/Quell-) Dateien,
  • Inkrementsicherung mit Robocopy, Schalter /m, bzw
  • (bei Bedarf: Differenzsicherung mit Robocopy, Schalter /a - Vorteil beim Rücksichern, da alle geänderten Dateien in einer Sicherung enthalten, Nachteil: benötigt mehr Speicherplatz).

Grüße
bastla
fremder
fremder 19.01.2007 um 14:22:22 Uhr
Goto Top
Dankeschön Bastla,

ich bin gerade ganz nah an einer Lösung für das Problem. Wenn ich's habe, dann poste ich das hier.

Viele Grüße
Manuel
gregor2005
gregor2005 09.02.2009 um 14:20:57 Uhr
Goto Top
hallo,

so nun ca. zwei jahre später face-smile
konntest du ein schönes script erstellen?

lg
gregor
driftar
driftar 18.02.2009 um 13:51:18 Uhr
Goto Top
Ich habe mich die letzten paar Wochen ebenfalls mit Robocopy beschäftigt. Mit einwenig ausprobieren und testen findet man die richtigen Einstellungen ohne Problemen.

Für das Fullbackup und das Inkremental Backup habe ich folgende Zeilen je in eine Batch geschrieben:

Fullbackup:
robocopy.exe E:\_ARCHIV\ \\rackstation01\Backups\SRV02\_ARCHIV\ /E /COPY:DAT /V /R:0 /W:0 /NP /LOG:F:\Backupjobs\Logs\1_%date%_srv02_archiv.txt /TEE
attrib -a E:\_Archiv\*.* /S /D

Inkremental Backup:
robocopy.exe E:\_ARCHIV\ \\rackstation01\Backups\SRV02\_ARCHIV\ /M /E /COPY:DAT /V /R:0 /W:0 /NP /LOG:F:\Backupjobs\Logs\2_%date%_srv02_archiv2.txt /TEE

Die Unterschiede sind zum einen beim Fullbackup dass das Archivbit zurückgesetzt wird (bei allen Dateien, in allen Unterordnern), und beim inkrementellen Backup der Schalter /M welcher nur solche Files sichert bei welchem das Archivbit gesetzt ist. Des weiteren habe ich das Log soweit angepasst dass beim inkrementellen Backup ein leicht veränderter Name genutzt wird.

Als Option lassen sich beide Batch-Files sicherlich in einem konsolidieren, damit nur ein File ausgeführt wird, wohl abhängig der geplantent Backupzeit /-Tag.

Gruss
driftar
perfectsky
perfectsky 19.08.2009 um 11:36:45 Uhr
Goto Top
hallo driftar,

also so wie ich das verstehe, klingt das alles soweit ganz gut, aber macht man dann nicht quasi ein volles backup zuviel?

- erst wird ein full backup erstellt
- danach das archiv-bit zurückgesetzt
- dann inkrementell bzw. differentiell gesichert
(voll da es kein archivbit erkennen kann, und um für die laufzeit des inkr. bzw. dif. backups bis zum nächsten vollbackup die daten auch wirklich inkr. oder dif. zu sichern)

vielleicht frag ich jetzt wirklich ein wenig dumm, da mir da noch ein gedankengang fehlt, aber ist das zweite backup im inkr. bzw. dif. modus nicht vollsicherung genug, da kein archivbit gesetzt wird? und reicht es da nicht aus einfach zwischendurch das archivbit zurück zu setzen um wieder ein quasi full backup zu haben?

greetz Marcel
driftar
driftar 19.08.2009 um 14:17:45 Uhr
Goto Top
Hi Marcel

Vielleicht habe ich mich nicht ganz genau ausgedrückt. Die erste Batch macht eine Vollsicherung per Robocopy. Dabei wird bei allen gesicherten Dateien automatisch das Archivbit gelöscht (attrib -a). Somit werden die Dateien gekennzeichnet. Es sind dann alle Dateien gesichert.

Fullbackup:
robocopy.exe E:\_ARCHIV\ \\rackstation01\Backups\SRV02\_ARCHIV\ /E /COPY:DAT /V /R:0 /W:0 /NP /LOG:F:\Backupjobs\Logs\1_%date%_srv02_archiv.txt /TEE
attrib -a E:\_Archiv\*.* /S /D

Mit der zweiten Batch gibt es nur noch eine inkrementelle Sicherung. Anhand der Archivbits (neue und / oder veränderte Dateien erhalten ja automatisch das Archivbit) wird analysiert was zu sichern ist und entsprechend nur noch das gesichert. Der feine Unterschied ist hierbei der Schalter /M. Dieser bewirkt dass das Archivbit wieder zurückgesetzt wird (also analog zu attrib -a).

Inkremental Backup:
robocopy.exe E:\_ARCHIV\ \\rackstation01\Backups\SRV02\_ARCHIV\ /M /E /COPY:DAT /V /R:0 /W:0 /NP /LOG:F:\Backupjobs\Logs\2_%date%_srv02_archiv2.txt /TEE

Gruss
driftar
perfectsky
perfectsky 02.09.2009 um 16:45:35 Uhr
Goto Top
hi driftar,

soweit ist alles in meinem sinne verlaufen face-smile.
die batch hab ich soweit angepasst, dass mir erst ein vollbackup,
darauf dann ein differentielles und von der ersten backup-platte dann ne spiegelung gemacht wird auf eine zweite.
NUR, die daten die kopiert wurden kann ich nicht in den entsprechenden ordnern im explorer einsehen und ich frage mich warum!?
ich kann zwar, den mir bekannten pfad angeben bekomme die ersten ordner in denen das backup unterteilt ist, vor einer manuellen eingabe, nicht zu sehen. kann es daran liegen das, das es unterordner mit nur einem buchstaben sind ;)?!

greetz
driftar
driftar 02.09.2009 um 16:53:09 Uhr
Goto Top
Tach!

Versuche bei Deinen Batches, falls noch nicht gesetzt, mal ein Log auszugeben. Das Log zeigt an was gesichert wurde und was nicht. Entweder weils im Sicherungsziel bereits aktuell ist und somit nicht gesichert werden muss, oder weil es einen Fehler gegeben hat.

Allenfalls kannst Du die Batchzeile auch mal im Kommandozeilenfenster von Hand eingeben um bspw. nur mal einen Ordner von A nach B zu sichern. Dann musst Du im Ziel nachschaun obs gesichert wurde, resp. angezeigt wird.

Wieso dass der Ordnerinhalt nicht angezeigt wird kann viele Gründe haben. Einer davon sind möglicherweise nicht vorhandene Berechtigungen. Du hast wohl Zugriff auf den Ordner, kannst den Inhalt aber nicht sehen.

Gruss
driftar
perfectsky
perfectsky 03.09.2009, aktualisiert am 18.10.2012 um 18:39:13 Uhr
Goto Top
Moinsen driftar,

Soweit wird alles mit geloggt und in Textdateien festgehalten, insofern kleine Probleme. Auch Berechtgigungen können es nicht sein - habe vollen Zugriff auf alles. Naja, ich dachte vielleicht kann ich dir das noch anders veranschaulichen und habe einen Screenshot gemacht, den ich hier aber nicht einbinden kann. Ich mache hieraus mal nen meine eigene Diskussionsrunde und binde das Bild ein.

greetz

PS: hier der Titel eines alten Beitrags bei dem ich das Bild hinzugefügt habe.

Dateisynchronisation mit unterschiedlichen OS
Dateisynchronisation mit unterschiedlichen OS

greetz
Thabeus
Thabeus 01.08.2018 um 10:21:18 Uhr
Goto Top
Moin,

viele Jahre später, liest hier noch wer mit?
Ich wüsste gerne wie ich das ganze detailiert auseinander nehme damit ich das 1:1 auf meine Pfade übertragen kann.
Derzeit läuft SIcherung nur Händisch was echt nervtötend ist und ich täglich schauen muss ob xcopy auch gelaufen ist.

AKtuell ist es so das meine AUfgabenplanung zwar sagt erfolgreich verlaufen, aber die täglich aktuallen Daten erscheinen nicht auf dem Nas.
Grüße
Thabeus