Я занимаюсь миграцией установки Windows на виртуальную машину. На физическом устройстве с Windows есть два раздела: /dev/sda1
и /dev/sda2
. Также есть большой объем свободного места после второго раздела.
Я могу легко создать виртуальный диск /dev/sda
с помощью этой команды:
cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES
Однако это создаст огромный файл, который будет включать все свободное пространство. Я хочу, чтобы файл включал только два раздела. Как это сделать? Или есть ли возможность изменить размервнизвиртуальный диск после его создания?
решение1
Судя по всему, все довольно просто. Вот как выглядела моя таблица разделов:
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
Я мог бы создать виртуальный диск из всего этого физического диска с помощью команды:
cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi 117038121985
Это создало бы виртуальный диск с двумя разделами NTFS и еще 66 ГБ пустого пространства. Поскольку мне не нужно было пустое пространство, все, что мне нужно было сделать, это указать, что это NUMBEROFBYTES
два раздела, которые мне нужны (плюс я добавил немного больше, чтобы быть надежнее). Эта команда:
cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi 46171161600
создаст виртуальный диск всего с двумя разделами.