VirtualBox error: fixing VDI already registered

Oftmals ist es zweckmäßig, eine Art Template-Image für eine virtuelle Maschine (VM) zu erstellen, mit welchem man eine saubere Basis erhält, auf der man Software installieren kann, speziell für die einzelne VM.
Das Problem ist, dass VirtualBox in jedes VDI (virtual disk image) eine eindeutige ID schreibt, welche es verhindert, dass eine identische Copy eines Images mehrmals eingebunden wird.
Constantin Gonzalez hat dazu in seinem Blog eine interessante Lösung beschrieben.
Ich habe das zum Anlass genommen, diesen Befehl in ein bash-script zu gießen ;-).
Hier als das Script:

#!/bin/sh
# Copy VDI with unique identifier
if [ $# -ne 2 ]; then
    echo "Usage: ./copyVDI.sh <VID-source> <VID-target>"
    exit 1
else
    if [ $1 == $2 ]; then
        echo "VID-source has to be not equal to VID-target!"
        exit 1
    fi
    cp $1 $2
    dd if=/dev/random of=$2 bs=1 count=6 seek=402 conv=notrunc
    exit 0
fi

Das Script sollte selbsterklärend sein.
Faktisch kann man hiermit eine Copy eines VDIs anlegen, welche gleichzeitig eine eindeutige ID erhält.

Leave a Reply