Сегодня я только что обнаружил, что можно создавать файлы VirtualBox VMDK, которые просто ссылаются на реальные разделы на локальных дисках и, разумеется, были очень взволнованы. «Это означает, что я могу загрузить мою установку Windows 7 из VirtualBox, работающего в Linux!"
Я создал файл VMDK примерно так:
sudo VBoxManage internalcommands createrawvmdk -filename .VirtualBox/Hard\ Disks/Windows\ 7\ Local.vmdk -rawdisk /dev/sdb -partitions 2,4,5
Раздел 2 - это мой загрузочный раздел EFI, раздел 4 - это раздел MSft Windows, а раздел 5 - это фактический раздел Windows NTFS. Это прошло без проблем, поэтому я разбил файлы VMDK на своего текущего пользователя, чтобы я мог запустить их с моим логином.
Это привело к первой заминке. Я не могу добавить это изображение в VirtualBox как любой пользователь, кроме root, и я действительно хотел бы не запускать его как root, если это возможно. Есть ли обходной путь?
Следующая заминка - это EFI. Я включил загрузку EFI в VirtualBox, но всякий раз, когда я загружаю образ EFI/Microsoft/Boot/bootmgfw.efi, я вижу следующий код:
BlXmiInitialize failed 0xc000009a
и это не загружается. Кроме того, в лучшем случае хлопотно использовать реальную оболочку UEFI для загрузки.
Как я могу получить мою фактическую локальную установку Windows 7, загружающуюся как пользователь без полномочий root из Linux в VirtualBox?
Обновить
Добавив своего пользователя Linux в группу disk
, вы можете использовать диск VMDK в качестве пользователя без полномочий root:
sudo adduser me disk
Я все еще не могу обойти ошибку загрузки, все же.
Я подумал, что это может быть из-за других проблем, поэтому я попытался использовать мой установочный диск Windows 7 для восстановления запуска, но, похоже, он даже не видит установку Windows, так как диск предлагает мне просто установить Windows.
Чтобы устранить потенциальные проблемы с отсутствием важной информации, я сделал следующее, чтобы создать VMDK всего диска, а не только отдельных разделов:
VBoxManage internalcommands createrawvmdk -filename ".VirtualBox/Hard Disks/Windows 7 Local.vmdk" -rawdisk /dev/sdb
Диск /dev/sdb
- это виртуальный диск, предоставляемый аппаратной платой Intel RAID (RS2BL080).