Ich bin gerade dabei, die Windows-Installation auf eine VM zu migrieren. Auf dem physischen Gerät mit Windows gibt es zwei Partitionen: /dev/sda1
und /dev/sda2
. Nach der zweiten Partition gibt es außerdem eine große Menge an freiem Speicherplatz.
/dev/sda
Mit diesem Befehl kann ich ganz einfach eine virtuelle Festplatte aus dem Vollen erstellen :
cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES
Dadurch wird jedoch eine riesige Datei erstellt, die den gesamten freien Speicherplatz enthält. Ich möchte, dass die Datei nur die beiden Partitionen enthält. Wie kann ich das tun? Gibt es alternativ eine Option zum Ändern der Größerunterdie virtuelle Festplatte, nachdem sie erstellt wurde?
Antwort1
Offensichtlich ist das alles ganz einfach. So sah meine Partitionstabelle aus:
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 526335 262144 7 NTFS
/dev/sdb2 526336 92342323199 46170898432 7 NTFS
Unpartitioned 92342323200 234076243969 70866960384
Mit dem folgenden Befehl könnte ich aus dieser gesamten physischen Festplatte eine virtuelle Festplatte erstellen:
cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi 117038121985
Dadurch wird eine virtuelle Festplatte mit den beiden NTFS-Partitionen und weiteren 66 GB leerem Speicherplatz erstellt. Da ich den leeren Speicherplatz nicht wollte, musste ich nur die NUMBEROFBYTES
beiden benötigten Partitionen angeben (und zur Sicherheit habe ich noch etwas mehr hinzugefügt). Dieser Befehl:
cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi 46171161600
würde die virtuelle Festplatte nur mit den beiden Partitionen erstellen.