Skriptbasierte Befehlsverarbeitung mit O&O DiskImage
O&O DiskImage bietet mit seinem Befehlsinterpreter eine leistungsfähige Möglichkeit, Datenträger, Partitionen, Volumes und Sicherungen vollautomatisiert über Skripte zu steuern. Diese Funktion richtet sich primär an Administratoren, IT-Profis und Servicetechniker, die wiederkehrende Sicherungs-, Wiederherstellungs- oder Migrationsaufgaben reproduzierbar und ohne Benutzerinteraktion ausführen möchten.
Mithilfe von Befehlsdateien (XML) lassen sich nahezu alle Szenarien abbilden, die auch über die grafische Benutzeroberfläche von O&O DiskImage verfügbar sind – einschließlich Sicherung, Wiederherstellung, Mounten von Images und Laufwerksverwaltung.
Einsatzgebiete der skriptbasierten Verarbeitung
Die skriptbasierte Steuerung eignet sich insbesondere für:
- Automatisierte Datenträgersicherungen
- Forensische 1:1-Kopien von Datenträgern
- Wiederherstellung von Systemen ohne Benutzereingriff
- Wiederkehrende Wartungs- und Backup-Jobs
- Integration in bestehende Administrations- oder Deployment-Prozesse
- Notfall- und Recovery-Szenarien in O&O BlueCon
Hinweis:
O&O DiskImage verfügt über zahlreiche Schutzmechanismen, um
unbeabsichtigte Benutzeraktionen zu verhindern, die zu Datenverlusten
führen könnten.
Bei der skriptbasierten Befehlsverarbeitung werden diese Schutzmechanismen teilweise bewusst umgangen, um eine maximale Kontrolle zu ermöglichen.
Verwenden Sie den Befehlsinterpreter daher nur mit äußerster Vorsicht und ausschließlich, wenn Sie sich der Auswirkungen jedes einzelnen Befehls sicher sind.
Aufbau und Ausführung von Befehlsdateien
Die Steuerung erfolgt über XML-basierte Befehlsdateien, die alle auszuführenden Aktionen enthalten. Diese Dateien können entweder:
- direkt über die Kommandozeile gestartet oder
- über die grafische Oberfläche von O&O DiskImage importiert und ausgeführt
werden.
Aufruf über die Kommandozeile:
oodi /s PfadZurDatei.xml
Dabei steht: - oodi für den O&O DiskImage
Befehlsinterpreter - /s für das Ausführen einer Skriptdatei
- PfadZurDatei.xml für den vollständigen Pfad zur
Befehlsdatei
Importieren und Ausführen über die Benutzeroberfläche
Alternativ kann eine Befehlsdatei direkt im Programm geladen werden:
- Starten Sie O&O DiskImage.
- Wählen Sie die Aktion Importieren.
- Laden Sie die gewünschte XML-Befehlsdatei.
- Starten Sie die Ausführung des importierten Jobs.
Diese Methode eignet sich besonders für Tests oder kontrollierte Ausführungen.
Fehlerbehandlung und Rückgabewerte
Standardmäßig beendet O&O DiskImage die Skriptausführung sofort, wenn ein Fehler auftritt, und gibt einen entsprechenden Fehlercode zurück.
Rückgabewert
0
→ Die Ausführung war erfolgreich, es sind keine Fehler aufgetreten.Rückgabewert ≠
0
→ Es ist mindestens ein Fehler aufgetreten.
Um die Ausführung trotz Fehlern fortzusetzen, kann in der Befehlsdatei der folgende Parameter gesetzt werden:
stop_at_error="false"oder
stop_at_error="no"
Wichtig:
Das Fortsetzen einer Befehlsdatei trotz Fehlern kann zu inkonsistenten
Zuständen führen. Verwenden Sie diese Option nur, wenn bewusst mit
alternativen Pfaden oder optionalen Aktionen gearbeitet wird.
Laufwerksbuchstaben bei der Skriptausführung
Bei der Verwendung des Befehlsinterpreters werden keine Laufwerksbuchstaben automatisch zugewiesen.
Das bedeutet: - Partitionen oder Volumes sind ohne explizite Zuweisung - im Microsoft Explorer nicht sichtbar - von bestimmten Programmen nicht ansprechbar
Um dies zu vermeiden, müssen Laufwerksbuchstaben explizit zugewiesen werden.
Es stehen dabei zwei Möglichkeiten zur Verfügung: - einen konkreten Laufwerksbuchstaben festlegen - den nächsten freien Laufwerksbuchstaben automatisch zuweisen lassen
Hinweis:
Ohne Laufwerksbuchstaben können nachfolgende Skriptbefehle oder externe
Programme fehlschlagen, obwohl der Datenträger technisch korrekt
eingebunden ist.
Groß- und Kleinschreibung
Bei der Verwendung von Kennzeichnern, Befehlen und Namen wird nicht zwischen Groß- und Kleinschreibung unterschieden.
Beispiele (gleichwertig): - command -
COMMAND - Command
Gültige Struktur von Befehlsdateien
Jeder einzelne Befehl muss zwingend in eines der folgenden XML-Elemente eingebettet sein:
<DiskImage><Job><DiskImageJob>
Befehle außerhalb dieser Strukturen werden ignoriert oder führen zu einem Fehler.
Wichtig:
Eine fehlerhafte XML-Struktur führt dazu, dass die Befehlsdatei nicht
oder nur teilweise ausgeführt wird. Prüfen Sie Skripte vor dem
produktiven Einsatz sorgfältig.
Best Practices
- Testen Sie jede Befehlsdatei zuerst in einer Testumgebung
- Verwenden Sie sprechende Dateinamen und Kommentare
- Arbeiten Sie bei kritischen Operationen mit
stop_at_error="true" - Erstellen Sie vor Änderungen immer ein vollständiges Backup
- Dokumentieren Sie Skripte für spätere Wartung oder Übergabe
Die skriptbasierte Befehlsverarbeitung macht O&O DiskImage zu einem äußerst flexiblen Werkzeug für professionelle Backup-, Recovery- und Administrationsszenarien – insbesondere in Kombination mit O&O BlueCon und automatisierten Notfallprozessen.
Bedingungen (Conditions)
In einer O&O-DiskImage-Befehlsdatei können Befehle und/oder einzelne Parameter mit Bedingungen verknüpft werden. Dadurch lassen sich Aktionen abhängig von bestimmten Voraussetzungen ausführen. Dies ermöglicht eine dynamische und kontextabhängige Skriptsteuerung, z. B. für mehrstufige Sicherungs- oder Wiederherstellungsprozesse.
Eine Bedingung wird immer durch das XML-Element
<CONDITION> gekennzeichnet. Der
enthaltene Ausdruck wird zur Laufzeit ausgewertet. Nur wenn die
Bedingung wahr (true) ist, wird der zugehörige Befehl
oder Parameter ausgeführt bzw. berücksichtigt.
Unterstützte Vergleichsoperatoren
Für Bedingungen stehen folgende Operatoren zur Verfügung:
==– Werte sind gleich
!=– Werte sind ungleich
>– linker Wert ist größer als rechter Wert
<– linker Wert ist kleiner als rechter Wert
Diese Operatoren können sowohl mit festen Werten als auch mit Umgebungsvariablen kombiniert werden.
Dynamische Bedingungen mit Umgebungsvariablen
Durch die Auswertung von Umgebungsvariablen innerhalb von Bedingungen lassen sich Skripte dynamisch steuern. Dies ist besonders hilfreich für:
- mehrstufige Image- oder Restore-Prozesse
- unterschiedliche Abläufe je nach Systemzustand
- automatisierte Entscheidungslogik in Notfallszenarien
Umgebungsvariablen werden über die Syntax
$ENV:(VariableName) eingebunden.
Beispiel: Bedingte Partitionsanlage
<command name="create partition">
<CONDITION>$ENV:(ImageStep)==2</CONDITION>
<drivenumber>0</drivenumber>
<!-- Zielobjekt ist Datenträger 0 -->
<remaining_range>true</remaining_range>
<!-- Partition wird im verbleibenden freien Bereich angelegt -->
<driveletter_to_set>D</driveletter_to_set>
<!-- Zuweisung des Laufwerksbuchstabens D -->
<chs_alignment>yes</chs_alignment>
<!-- Ausrichtung auf Cylinder/Head/Sector -->
<NTFS>true</NTFS>
<!-- NTFS-Partition anlegen -->
<format>true</format>
<!-- Formatierung der Partition durchführen -->
</command>In diesem Beispiel wird der Befehl nur dann
ausgeführt, wenn die Umgebungsvariable ImageStep
exakt den Wert 2 besitzt. Andernfalls wird der gesamte
Befehl übersprungen.
Wichtig:
Bedingungen werden immer vor der Ausführung eines
Befehls geprüft. Ist die Bedingung nicht erfüllt, findet keinerlei
Teiloperation statt.
Umgebungsvariablen (Environment) und Template-Parameter
Der O&O DiskImage Befehlsinterpreter unterstützt sowohl Umgebungsvariablen als auch Template-Parameter, um Skripte flexibel, wiederverwendbar und dynamisch zu gestalten.
Umgebungsvariablen
($ENV:(...))
Ein Wert, der in der Form
$ENV:(VariableName) angegeben wird, wird
zur Laufzeit durch den Inhalt der entsprechenden Umgebungsvariable
ersetzt.
Beispiel:
Angenommen, die Umgebungsvariable image_name hat
folgenden Wert:
C:\Sicherung20990226.omg
Dann wird die Zeichenkette:
$ENV:(image_name)
zur Laufzeit automatisch durch:
C:\Sicherung20990226.omg
ersetzt.
Template-Parameter
($TEMPL:(...))
Zusätzlich stehen Template-Parameter zur Verfügung.
Diese dienen als Platzhalter und werden ebenfalls zur Laufzeit ersetzt.
Template-Parameter werden durch
$TEMPL:(...) gekennzeichnet.
Verfügbare Template-Parameter
- ComputerName – Name des aktuellen Computers
- UserName – Benutzername des laufenden
Prozesses
- DefaultPath – Standardpfad von O&O
DiskImage
- Day – Tag (01–31)
- Month – Monat (01–12)
- Year – Jahr (vierstellig)
- Hour – Stunde
- Minute – Minute
- Second – Sekunde
- Weekday – ausgeschriebener Wochentag
- WeekNumber – Kalenderwoche
Beispiel: Dynamische Image-Wiederherstellung
<command name="restore image">
<image_name>
C:\Sicherung$TEMPL:(Year)$TEMPL:(Month)$TEMPL:(Day).omg
</image_name>
<!-- Dynamische Bildung des Imagenamens -->
<target_drivenumber>0</target_drivenumber>
<!-- Ziel ist Datenträger 0 -->
<image_driveletter>C</image_driveletter>
<!-- Quellpartition mit Laufwerksbuchstaben C -->
<chs_alignment>yes</chs_alignment>
<!-- Ausrichtung auf Cylinder/Head/Sector -->
<set_bootable_partition_bootable>yes</set_bootable_partition_bootable>
<!-- Bootfähigkeit wiederherstellen -->
<append_on_target_drive>yes</append_on_target_drive>
<!-- Partition in bestehendes Layout integrieren -->
</command>Ergebnis zur Laufzeit (Beispiel):
Angenommen, das aktuelle Datum ist 26.02.2099, dann wird der Dateiname automatisch zu:
C:\Sicherung20990226.omg
Diese Image-Datei wird anschließend für die Wiederherstellung verwendet.
Tipp:
Die Kombination aus Bedingungen, Umgebungsvariablen und
Template-Parametern ermöglicht hochgradig flexible Skripte, die sich
ideal für automatisierte Backup- und Recovery-Szenarien eignen –
insbesondere in Verbindung mit O&O BlueCon.