Создать виртуальный диск из некоторых разделов на физическом устройстве

Создать виртуальный диск из некоторых разделов на физическом устройстве

Я занимаюсь миграцией установки 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

создаст виртуальный диск всего с двумя разделами.

Связанный контент