Skripte für die tägliche Datensicherung

Das Problem

Du benötigst Scripte für die tägliche Datensicherung und möchtest die gesicherten Daten nicht in irgendeinem "obskuren" (wobei ich nichts die die kommerziell erhältlichen Datensicherungswerkzeuge sagen will) Format abgelegt haben.

Die Idee

Grundlage meiner hier vorgestellten Lösung sind die BfF-Skripte (BackUp für Faule) von Axel Vahldiek aus der c't-Redaktion. Die c't-Idee (... man nehme XCOPY und nutze das Archiv-Bit als Erkennungsmerkmal) wurde auf 2 Prozeduren verteilt, ein Steuerskript (khoBFF.bat), welches über den Autostart-Ordner beim Login automatisch aktiviert wird und ein ausführendes Skript (khoBFF_Verzeichnis.bat) welches die eigentliche Arbeit erledigt

Die Lösung

Speichere die beiden Prozeduren in einem Verzeichnis Deiner Wahl und füge dem Ordner C:\Dokumente und Einstellungen\<Deine ID>\Startmenü\Programme\Autostart eine Verknüpfung hinzu, die auf das Script khoBFF.bat zeigt.


Die Schritte im Einzelnen

Es wird davon ausgegangen, dass zu zu sichernden Dateien auf einer eigenen Partition (z.B. Y:\) liegen sollen.
Aufzählung Erstelle mit dem Windows-Explorer ein Verzeichnis Y:\Bat
Aufzählung Erstelle mit dem Windows-Explorer ein Verzeichnis Y:\Log
Aufzählung Erstelle mit dem Editor eine Datei khoBFF.bat und öffne sie zum Bearbeiten.
Aufzählung Im Codefenster folgende Programmzeilen eingeben.


Rem Dies ist das Skript khoBFF.BAT aus dem Verzeichnis Y:\BAT
Rem © 2005 Karl-Holger-Osterbuhr 

Set Platte=C

Set Verzeichnis=Daten
Call khoBFF_Verzeichnis %PLatte% %Verzeichnis%

Set Verzeichnis=Eigene~1
Attrib -A %Platte%:\%Verzeichnis%\Cookies\*.*
Call khoBFF_Verzeichnis %PLatte% %Verzeichnis%

Aufzählung Passe die zu sichernden Verzeichnisse Deinen Bedürfnissen an
Aufzählung Speichere obige Datei
Aufzählung Erstelle mit dem Windows-Explorer für jeden "Set Platte="-Befehl ein Verzeichnis Y:\<Wert von Platte>, hier also Y:\C
Aufzählung Erstelle mit dem Editor eine Datei khoBFF_Verzeichnis.bat und öffne sie zum Bearbeiten.
Aufzählung Im Codefenster folgende Programmzeilen eingeben.


Rem Dies ist das Skript khoBFF_Verzeichnis.BAT aus dem Verzeichnis Y:\BAT
Rem © 2005 Karl-Holger-Osterbuhr 


Set Platte=%1
Set Verzeichnis=%2
set Quelle="%Platte%:\%Verzeichnis%"
set Ziel="Y:\%PLatte%\%Verzeichnis%\%date%"
if exist %Ziel% goto END

set BackUpLog=Y:\Log
set BackUpName=BackUp_%PLatte%_%Verzeichnis%
set templog= "%temp%\tmp%BackUpName%.log"

echo . >>%BackUpLog%\%BackUpName%.log
echo Starte Backup: %date% %time% von %Quelle% nach %Ziel% >>%BackUpLog%\%BackUpName%.log
md %Ziel%

xcopy %Quelle% %Ziel% /m /s /v /c /i /f /h /k /o /x /y >>%BackUpLog%\%BackUpName%.log

rem Erstellt 2003 von Axel Vahldiek / c't
rem mailto: axv@ctmagazin.de
:END

Aufzählung Speichere obige Datei
Aufzählung [Start] / rechter Mausklick / Eigenschaften [Anpassen...] [Hinzufügen]
Aufzählung Suchen der Datei khoBFF.bat
Aufzählung Ordner: Startmenü / Programme / Autostart [fertig stellen]
Aufzählung Ggf. noch einmal in die Eigenschaften der gerade erstellten Verknüpfung gehen und Ausführen auf "Minimiert" setzen


Ab der nächsten Windows-Anmeldung läuft automatisch das Script am Begin der Sitzung an und sichert die Dateien, die das Archiv-Bit gesetzt haben.

Auf der BackUp-Partition entsteht nach und nach ein derartiger Verzeichnisbaum:

 Datenträger in Laufwerk Y: ist BackUp
Volumeseriennummer: 12234-5678

Verzeichnis von Y:\C\Eigene Dateien

17.07.2005 11:43 <DIR> .
17.07.2005 11:43 <DIR> ..
05.07.2005 18:47 <DIR> 05.07.2005
07.07.2005 17:28 <DIR> 07.07.2005
09.07.2005 08:58 <DIR> 09.07.2005
10.07.2005 11:26 <DIR> 10.07.2005
11.07.2005 19:13 <DIR> 11.07.2005
14.07.2005 17:40 <DIR> 14.07.2005
15.07.2005 16:22 <DIR> 15.07.2005
16.07.2005 10:51 <DIR> 16.07.2005
17.07.2005 11:44 <DIR> 17.07.2005


Stand: 17.07.05
Copyright: Karl-Holger Osterbuhr 2005 - Alle Rechte vorbehalten