Virtualbox не может загрузить гостя из физического раздела GPT
Virtualbox не может загрузить гостя с физического раздела GPT, он останавливается на черном экране с курсором (не мигает) в левом верхнем углу. Версия Virtualbox - 5.0.10 x64.
PhysicalDrive0 - это диск с GPT, вот информация о разделе:
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands listpartitions -rawdisk \\.\PhysicalDrive0
Number Type StartCHS EndCHS Size (MiB) Start (Sect)
1 0x00 0 /0 /0 0 /0 /0 100 2048
2 0x00 0 /0 /0 0 /0 /0 128 206848
3 0x00 0 /0 /0 0 /0 /0 409372 468992
4 0x00 0 /0 /0 0 /0 /0 409600 838862848
5 0x00 0 /0 /0 0 /0 /0 409600 1677723648
6 0x00 0 /0 /0 0 /0 /0 662640 2516584448
7 0x00 0 /0 /0 0 /0 /0 16288 3873671168
- Раздел № 3: Win7 sp1 x64, Хост
- Раздел №6: Ubuntu14.04.3 x64, Гость
- Раздел № 7: своп
Двойная загрузка через BIOS работает нормально.
Во-первых, загрузите компьютер с Ubuntu14.04.3 через BIOS, выполните следующие команды для создания файла.mbr:
sudo grub-install /dev/sdb
sudo dd if=/dev/sdb of=~/my.mbr
/ dev / sdb - это USB-флеш-накопитель, и после этих команд я могу загрузить Ubuntu14.04.3 через этот USB-фальш.
Затем загрузите компьютер с Win7, запустите следующие команды для создания файла vmdk, в командной строке DOS, с разрешения администратора:
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands createrawvmdk
-filename e:\VirtualBox\a.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 6,7 -mbr
e:\VirtualBox\my.mbr
RAW host disk access VMDK file e:\VirtualBox\a.vmdk created successfully
Запустите Virtualbox с разрешения администратора, создайте виртуальную машину, 64-битную Ubuntu, 4G RAM, используйте существующий a.vmdk. Запустите виртуальную машину, она остановится на черном экране с курсором (не мигает) в левом верхнем углу.
Я много искал, но не нашел решения. Кто-нибудь может мне помочь?
1 ответ
Наконец, мне удалось это сделать, хотя есть некоторые вопросы, которые я не могу объяснить. Я хотел бы записать это здесь для людей, которые сталкиваются с той же проблемой, и поэтому я могу помнить в будущем.
При создании файла vmdk
-mbr
Параметр не обязателен, но обязательно НЕ включайте раздел, в котором находится ОС хоста, то есть весь физический диск в vmdk не будет работать. Моя последняя командная строка (за исключением главного раздела № 3) была:C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands createrawvmdk -filename e:\VirtualBox\Ubuntu.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 1,2,4,5,6,7
После создания гостевой машины (как описано в вопросе), перейдите в настройки гостя, Система, Материнская плата, Расширенные функции, обязательно отметьте "Включить EFI (только для специальных операционных систем)".
Запустите гостевую систему и быстро нажмите Del, чтобы войти в гостевую BIOS VirtualBox, прежде чем отобразится меню загрузки Windows. Если вам не удалось это сделать и вы попали в меню загрузки Windows, принудительно отключите питание гостя и начните снова.
В BIOS перейдите в Диспетчер обслуживания загрузки, Параметры загрузки, Изменить порядок загрузки. Переместите EFI Internal Shell к первому варианту: "Принять изменения и выйти". Нажмите Сбросить пункт меню системы на экране Boot Maintenance Manager. Инструкции по изменению порядка загрузки находятся внизу экрана BIOS.
Когда гость снова перезагрузится, он войдет в оболочку EFI (вместо меню загрузки Windows). Теперь вам нужно выяснить, какой раздел является загрузчиком EFI. При входе в оболочку он распечатывает части и их алисы, но, похоже, не распечатывает их все для меня. После того, как вы определились, какой у вас загрузчик EFI, запустите:
BLK2:\EFI\ubuntu\grubx64.efi
Он вернет ошибку, если это не загрузчик EFI.
Теперь отображается загрузочное меню GRUB, и мы можем запустить Ubuntu.
Иногда я вижу, что гость остается на пустом экране Ubuntu, иногда VirtualBox отображает ошибку. Я продолжаю перезапускать гостя, пока он не заработает. Возможно, вам также придется перезапустить с шага 3, так как кажется, что ваши настройки BIOS потеряны.
Надеюсь, это поможет вам несколько. Я хотел бы уточнить, что я проверял это только в: * VirtualBox 5.0.10 x64 * хост-ОС: Win7 sp1 x64 * гостевая ОС: Ubuntu 14.04.3 x64 * с определенными разделами диска, как описано.
Будьте очень осторожны, так как это действует непосредственно на физический диск. Ваши данные - ваша ответственность.