我有一台雙啟動筆記型電腦,運行 Windows 7 和 Ubuntu 12.04。我正在嘗試使用 Virtualbox 從 Windows 啟動 ubuntu 分割區。我已成功建立.vmdk,並建立了虛擬機器。但是,我無法啟動它(在 Virtualbox 中)。我得到的只是黑屏,遊標位於左上角。
我想知道我是否正確指定了分區。我的 Ubuntu 安裝有 3 個分割區:\、\boot、\home。沒有交換分區。這些都位於磁碟 0 中,分別為分割區 3、4、5。
我用來建立 .vmdk 的命令是:
VBoxManage internalcommands createrawvmdk -filename C:\Users\abalter\.virtualbox\ubuntu.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 3,4,5
然後我基於該 .vmdk 建立一個虛擬機器。
為什麼無法啟動?
答案1
這是一個已知的錯誤:https://www.virtualbox.org/ticket/9926 這http://www.neowin.net/forum/topic/784138-howto-boot-existing-ubuntu-partition-using-virtualbox-inside-windows/建議建立一個引導 grub2 的自訂 iso 作為解決方法。
答案2
我昨天剛做了這個,終於使用本教程讓它工作了:https://askubuntu.com/questions/78902/cannot-run-native-ubuntu-in-virtualbox-with-a-vmdk-created-using-the-createrawvm
我使用了 ceztko 的帖子(複製如下)。另請注意,在一切正常運行後,我啟動了 Ubuntu在虛擬機器中並且重新運行update-grub
,它消除了 Windows 7 的 grub 中的額外條目(這是為了安全起見;如果您不小心嘗試從運行在同一 Windows 7 安裝上的 VM 內啟動 Win 7 分區,那麼糟糕的糟糕的事情將會發生)。完成此操作後,我基本上有 2 個單獨的 grub 安裝:一個在系統 MBR 上,其中包含 Win 7 和 Ubuntu 的條目,另一個在 VirtualBox .vmdk 檔案的 MBR 上(即使該檔案指向原始 Ubuntu 分割區,它可能有不同的MBR)。
塞茲科的貼文:
我找到了一個完美的解決方法。 sda7是我安裝linux的分割區,5,6,7是我要虛擬化的本機分割區,「ceztko」是我的家:P
- 從本機 linux 中,將 grub 重新安裝到本機 linux 分割區:
sudo-grub install --force /dev/sda7
- 將分割區引導磁區複製到您的家中:
# dd if=/dev/sda7 of=/home/ceztko/virtualbox-native.mbr bs=512 count=1
- 將 virtualbox-native.mbr 複製到您的 Windows 安裝中
- 重新啟動到 Windows 並從管理員提示字元:
VBoxManage internalcommands createrawvmdk -filename C:\users\ceztko\ubuntu.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 5,6,7 -mbr c:\users\ceztko\Dropbox\resources\virtualbox-native.mbr
- 運行 VirtualBox 並將新的虛擬磁碟機指派給虛擬機器。
- 享受!
這可能是 Virtualbox 的錯誤。但更好的是,我猜想是 grub 中的一個錯誤,當作為 mbr 安裝在啟動磁碟中時,它會被不可訪問的 Windows 分割區混淆。
編輯:我應該提到 Hemlock 非常接近 - 問題確實是指向原始分割區的 .vmdk 檔案不包含有效的引導程式/引導磁區。 cetzko 帖子中的第一步是將 grub 安裝到 MBR分區的,然後複製該 MBR 以新增至 .vmdk 檔案中。通常grub安裝到整個硬碟的MBR中。
答案3
問題出在引導磁區。您可能沒有將其包含在原始磁碟的可用分割區中。
我以這種方式完成了類似的事情:
- 像平常一樣建立虛擬磁碟機。
- 建立您所描述的原始磁碟
- 安裝到虛擬光碟機
- 安裝
/
在虛擬磁碟機和/home
原始磁碟上 - 確保虛擬光碟機設定為啟動磁碟。這就是我遇到問題的地方。
- 享受