Nachdem die erste Version dieses Skripts durchaus eine gewisse Beliebtheit erlangt hat, folgt nun eine neuere Version. Dieses basiert zum einen auf der Änderung von Norbert (Danke nochmals) als auch auf den Neuerungen bei der Verwendung von VSS durch Drive Snapshot v1.41. Ferner wird von Windows ab Vista oder neuer ausgegangen. Man kann es aber auch mit ein paar kleineren Änderungen unter Windows XP verwenden.
Eine neuere Version des Skripts ist hier verfügbar!
Voraussetzungen
- Einen Ordner “C:\Backup”, einen Unterordner “C:\Backup\Tools” und “C:\Backups\Logs” anlegen.
- Die Tools weekday.exe und smtpsend.exe herunterladen und in den Unterordner “Tools” speichern.
Das Skript
Dieses Skript ist so ausgelegt, das es eine Sicherung auf ein Netzlaufwerk durchführt und am Ende eine E-Mail mit dem Protokoll versendet. Mit ein paar wenigen Handgriffen kann man es in “alle” Richtungen entsprechend auf die eigenen Bedürfnisse abändern.
@echo off rem Fenster-Titel festlegen title Datensicherung rem Konfiguration rem Zielpfad festlegen rem Zur Verwendung eines lokalen Ziels die "net use"-Befehle auskommentieren und die Ziel-Variable entsprechend aendern. rem Netzlaufwerk verbinden net use V: \\BACKUPSERVER\backup KENNWORT /user:BENUTZERNAME /persistent:no set Destination=V: REM set Destination=F:\Backup\%computername% rem Pfad fuer die Protokolle festlegen set LogDir=C:\Backup\Logs rem Festlegen, wie viele Wochen gesichert werden set NumberOfWeeksToKeep=4 rem Tag der Vollsicherung festlegen set FullBackupDay=Monday rem Woche auslesen und Leerzeichen entfernen set /p Week=< Week.txt set Week=%Week: =% rem Wochentag auslesen Tools\weekday.exe > weekday.txt set /p Weekday=< weekday.txt rem Vollstaendige Datensicherung ausfuehren, sofern der Tag stimmt. if %Weekday%==%FullBackupDay% goto full rem Ausfuehren der differentiellen Datensicherung snapshot.exe HD1:1 %Destination%\Diff-%Week%-%Weekday%-$disk.sna -h%Destination%\Full-%Week%-%FullBackupDay%-$disk.hsh -WT --novss -L350 > %LogDir%\%Week%-%Weekday%.txt snapshot.exe C: %Destination%\Diff-%Week%-%Weekday%-$disk.sna -h%Destination%\Full-%Week%-%FullBackupDay%-$disk.hsh -RWT --AllWriters -L307200 >> %LogDir%\%Week%-%Weekday%.txt goto email rem Ausfuehren der vollstaendigen Datensicherung :full rem Wochenwechsel set /A Week=Week %% NumberOfWeeksToKeep + 1 echo %Week% > week.txt snapshot.exe HD1:1 %Destination%\Full-%Week%-%Weekday%-$disk.sna -WT --novss -L350 > %LogDir%\%Week%-%Weekday%.txt snapshot.exe C: %Destination%\Full-%Week%-%Weekday%-$disk.sna -RWT --AllWriters -L307200 >> %LogDir%\%Week%-%Weekday%.txt rem E-Mail :email Tools\smtpsend.exe -fABSENDER -tEMPFAENGER -hMAILSERVER -sBackup -i%LogDir%\%Week%-%Weekday%.txt -luBENUTZERNAME -lpKENNWORT rem Netzlaufwerk trennen net use V: /d
Für Windows ab Vista wird die Boot-Partition (HD1:1) berücksichtigt.
Als maximale Größe für die Abbilddatei wird mittels des Parameters “-L” für die Boot-Partition ab Windows Vista 350 MB (Vista/7/2008/2008 R2 = 100MB, 8/2012 = 350MB) und für das Laufwerk “C:\” 300 GB angegeben.
Möchte man dieses Skript unter Windows XP verwenden, so sind die Zeilen mit “snapshot.exe HD1:1…” mit einem vorangestellten “rem” auszukommentieren.
Verwendet man kein Netzlaufwerk, so ist das Skript entsprechend abzuändern.
Sichert man mehr als das Laufwerk “C:\” so kann man einfach weitere Laufwerke entsprechend anhängen:
snapshot.exe C:+D:...
Links
Windows: Fehler mit Drive Snapshot v1.41 und dem Parameter “–AllWriters” vermeiden
Windows: Drive Snapshot, Windows 8 und Windows Server 2012
Windows: VSS-Fehler mit Drive Snapshot vermeiden
Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.
Hi,
bin gerade auf dein Scrip gestoßen und sehr begeistert was ihr beide da hinbekommen habt.
Ich habe noch eine Frage zu der Anpassung. Was passiert am Dienstag, wenn an meinem FullBackup am Montag nicht gesichert wurde?
Vielen Dank für die Arbeit!
Grüße
Markus
Sofern es ein Backup mit der passenden Nr. gibt, werden alle Änderungen seit diesem Backup gesichert.
danke, hört sich gut an 🙂
Jetzt habe ich noch folgendes merkwürdige Problem.
Wenn ich das Script doppelklicke, läuft es perfekt. Sobald ich es aber über die Aufgabenplanung starte, passiert nichts mehr. Als Fehler steht in der Aufgabenplanung auch nur (0xFF).
“Mit höchsten Berechtigungen ausführen” habe ich auch schon versucht.
Eigentlich kann man hier doch nichts falsch machen, aber es geht an zwei verschiedenen “Windows 7” PCs nicht.
Geb mal bei “Ausführen in” den Ordner an, in dem das Skript liegt.
danke