Zum Inhalt
DriveSnapshot

Kommandozeile

Oft will man gar nicht klicken: automatisch sichern zu festen Zeiten, mehrere Laufwerke auf einmal, nach dem Sichern prüfen. Alles, was die Oberfläche kann, geht auch von der Kommandozeile.

Laufwerk in eine Datei sichern

C:\> SNAPSHOT C: X:\C-Drive.sna

sichert Laufwerk C: in die Datei X:\C-Drive.SNA. Mehrere Laufwerke nacheinander auf einen Server:

SNAPSHOT C: \\Server\Backups\C-Drive.sna
SNAPSHOT D: \\Server\Backups\D-Drive.sna
SNAPSHOT E: \\Server\Backups\E-Drive.sna

Hängen Daten auf verschiedenen Partitionen voneinander ab, müssen alle gleichzeitig per Schattenkopie gesichert werden. Dafür verketten Sie die Laufwerke mit +:

SNAPSHOT C:+D:+E: \\Server\Backups\$disk-Drive.sna

Partitionen ohne Laufwerksbuchstaben sprechen Sie so an:

HD1:1
erste Partition auf der ersten Platte (HD2:1 die erste auf der zweiten usw.)
HD1:*
alle Partitionen der ersten Platte
HD X
alle Partitionen der Platte, auf der Laufwerk X: liegt (ab 1.43)
HDWIN:*
alle Partitionen der Platte, von der das laufende Windows gestartet wurde

Sobald mehr als eine Partition gesichert wird, muss $disk im Dateinamen stehen.

Häufige Schalter

-L1490Größe einer Teildatei in MB. Das Image wird in .SNA, .SN1, .SN2 … geteilt. Voreingestellt 1490, damit drei Teile auf eine DVD passen. Über 4000 MB besser nicht, sonst gibt es beim Restore unter DOS Ärger.
-RPapierkorb des Laufwerks vor der Sicherung leeren.
-WNicht auf einen Tastendruck warten. Ohne den Schalter wartet Snapshot am Ende, wenn es glaubt, aus einer Batchdatei gestartet zu sein.
-TImage nach dem Erzeugen vollständig einlesen und prüfen. Errorlevel > 0 heißt Fehler.
-GGrafische Fortschrittsanzeige auch aus der Batchdatei. -Go beendet bei Erfolg, -Gx beendet immer, -Gn ohne Abbruchknopf, -Gm startet minimiert.

Dateinamen mit Datum und Rechnername

Diese Kennungen im Dateinamen ersetzt Snapshot beim Start:

$computernameName des Rechners
$diskLaufwerksbuchstabe (C, D …)
$HDPartitionsname in der Form HD1-1 ab 1.43
$typebei differentiellen Images „dif"
$dateDatum sechsstellig als JJMMTT
$weekdayWochentag in zwei Buchstaben
$year $month $dayJahr vierstellig, Monat 1–12, Tag 1–31
$hour $minute $secondUhrzeit im 24-Stunden-Format
$weekKalenderwoche nach DIN 1355 ab 1.43
$LABEL="BACKUP"das erste Laufwerk mit diesem Namen. Praktisch für USB-Platten, die mal E:, mal F: heißen.
SNAPSHOT C: $LABEL="Backup"\$computername-$disk-$weekday.sna

Prüfen und reparieren

C:\> SNAPSHOT X:\Backup\c-drive.sna -T

prüft ein vorhandenes Image auf Konsistenz. In Batchdateien ist ein eigener Prüflauf meist praktischer als -T beim Sichern: Dann unterscheiden Sie „hat nicht geklappt, weil der Server weg oder die Platte voll war" von „hat Daten geschrieben, die nicht stimmen".

--QuickCheck:test.sna prüft schnell, ob das Image vollständig und fehlerfrei aussieht. Es ersetzt den Test mit -T nicht.

Ist ein Image beschädigt oder fehlen Teile, ist es als Sicherung wertlos, weil Sie nie wissen, welche Teile betroffen sind. Geht es nur um einige Dateien daraus, hilft vielleicht:

C:\> SNAPSHOT X:\DefektesImage.SNA --repair:Y:\REPARIERT.SNA

Das reparierte Image sollte sich einbinden lassen, spätestens nach CHKDSK kommen Sie an einen Teil der Daten. Dass der Inhalt stimmt, ist nicht garantiert. Ab 1.46 hängt --repair X:KAPUTT.SNA die Reparaturdaten an das Original an, statt ein neues Image anzulegen.

Laufwerk wiederherstellen

C:\> SNAPSHOT X:\D-Drive.sna D:

schreibt das Image auf Laufwerk D: zurück. Es gelten dieselben Einschränkungen wie beim Restore über die Oberfläche.

--Schedule C: D:\image.snaRestore von D:\image.sna nach C: für den nächsten Neustart vormerken. --ListSchedule zeigt, --RemoveSchedule entfernt die Vormerkung.
--autoreboot:off|any|successNach einem Restore beim Neustart: nie, immer oder nur bei fehlerfreiem Lauf automatisch neu starten.
--EntireDisk Image-C.sna HD1Ganze Platte mit allen Images, die zusammen mit Image-C.sna erstellt wurden, samt Partitionsstruktur auf HD1. ab 1.44
--resizepart C: 100000Partition und Dateisystem auf 100 GB vergrößern. Verkleinern geht nicht.
--RestorePartitionStructure HD1 DateiMBR, erweiterte Partitionen und die ersten bis zu 63 Sektoren. Reicht in der Regel auch für Bootmanager.
--AddDriverDem wiederhergestellten Windows einen Treiber für neue Platten mitgeben, beim Umzug auf andere Hardware.

Image als Laufwerk einbinden

C:\> SNAPSHOT X:\C-Drive.sna Z: -V

macht aus dem Image das virtuelle Laufwerk Z: und öffnet den Explorer. -VM bindet nur ein, ohne Explorer. Für Batchdateien gibt es -VQ ohne jeden Dialog; Snapshot muss dann mit start aufgerufen werden:

start Snapshot x:\image.sna Z: -vq
xcopy z:\Data c:\Data /E /H /K /O
Snapshot --unmount:Z

--unmount ohne Buchstaben hängt alle eingebundenen Images aus (ab 1.38).

Kennwort und Ausschlüsse

Das Kennwort für Verschlüsselung, Restore und Mount geben Sie mit -PW= an. Bei Mount und Restore fragt Snapshot sonst nach. Ein leeres -PW= sichert unverschlüsselt, auch wenn ein Standardkennwort hinterlegt ist.

C:\> SNAPSHOT C: X:\Backup\c-drive.sna -PW=SuperSecret

Ab 1.47 muss das Kennwort nicht mehr im Klartext in der Batchdatei stehen. Aus dem Kennwort wird einmal eine Schlüsseldatei erzeugt, die nicht geheim bleiben muss:

C:\> SNAPSHOT -pwgen=Key.txt -pw=Geheim
C:\> SNAPSHOT C: x:\image-c.sna -pwuse=Key.txt

Zum Restore oder Mounten brauchen Sie dann das ursprüngliche Kennwort.

Dateien ausschließen

PAGEFILE.SYS und HIBERFIL.SYS sind immer ausgeschlossen. Weitere Pfade geben Sie kommagetrennt an, Unterverzeichnisse sind eingeschlossen:

--exclude:\Temp,\Windows\Memory.dmp,\Windows\Minidump\*

Technisch fehlt danach nur der Inhalt dieser Dateien, die Verzeichniseinträge bleiben. Nach einem Restore sind die Dateien also da, enthalten aber Zufallsdaten. Snapshot legt deshalb SnapshotDeleteAfterRestore.BAT ins Image; die sollten Sie nach dem Restore ausführen.

Weitere Optionen

Die vollständige Liste gibt SNAPSHOT --? aus. Eine Auswahl:

--LogFile:C:\LOGFILE.TXTAlle Ausgaben in eine Datei umleiten.
--UseVSS --NoVSS --ForceVSSVolumenschattenkopie von Windows verwenden oder den eigenen Treiber.
--CreateDirZielverzeichnis anlegen, falls es fehlt.
--AutoBackupSize:512Alle Partitionen derselben Platte unter 512 MB mitsichern, für Boot- und Startpartitionen. ab 1.43
--LimitIORate:10Durchsatz auf 10 MB/s begrenzen (1–100).
--exec:"NET START ORACLE"Kommando ausführen, sobald der Schnitt gemacht ist. Muss am Ende der Kommandozeile stehen.
--EjectDriveAfterBackupZiellaufwerk nach der Sicherung auswerfen, wenn es das unterstützt. ab 1.46
--FullIfHashIsMissingBei differentiellem Backup ohne Hashdatei ein neues volles Image anlegen.
--NetUse:\server\share,N:,Benutzer,KennwortNetzlaufwerk verbinden. ab 1.44
--AddFTPAccount:Typ,Benutzer,Server,Kennwort,PortFTP- oder SFTP-Konto anlegen. Port 21 bzw. 22, wenn nicht angegeben. ab 1.50
--register:Lizenzdatei.txtLizenz eintragen, ohne Dialog.
--VersionVersionsnummer ausgeben und beenden. ab 1.47
--show --showlistAngeschlossene Platten und Partitionen auflisten.