問題很簡單直接:
如何在 VirtualBox 中從 USB 驅動器啟動?
編輯:
我已連接usb
到 VirtualBox,如螢幕截圖所示。
但即使已連接,也無法從 USB 驅動器啟動 (參考)。
所以我想知道是否還有其他從USB驅動器啟動的可能性?
答案1
VirtualBox 本身不支援從 USB 裝置啟動。為了從 USB 裝置啟動,需要另一個引導程式。以下步驟提供了實現此目的的一種可能方法:
- 下載撲通啟動管理器(目前為v5.0.15)
plpbt.iso
從 ZIP 檔案中提取檔案並將其保存在某個位置。開啟虛擬機器的設定並附加 ISO 檔案:
為 USB 裝置新增過濾器:
啟動虛擬機器並在選單中選擇“USB”選項:
如果一切順利,機器現在應該從 USB 裝置啟動。
答案2
編輯:2018 年 3 月 7 日
這裡需要注意一點。重新啟動時將 USB 驅動器留在電腦中可能會更改/dev/sd
驅動器盤符指定,從而導致原始usb.vmdk
文件指向不正確的驅動器,從而無法在 VirtualBox 中啟動。作為測試,我在系統中留下了一個。/dev/sdi
重啟之前是這樣,重啟之後是這樣/dev/sdc
。當您重新啟動電腦進行任何變更時,請在重新啟動之前移除 USB 隨身碟。我正在研究是否可以從驅動器的 UUID 建立原始磁碟,因為這不會改變。
由於 VirtualBox 不會引導至 USB 驅動器,因此您可以建立.vmdk
指向 USB 驅動器的檔案以引導至該驅動器。
筆記: 您必須將您的使用者帳戶新增至vboxusers
VirtualBox 群組才能看到您的 USB。您還必須將您的帳戶新增至該disk
群組中,否則您無法將.vmdk
檔案新增至虛擬機器。在下面添加了說明編輯。這也不會將USB驅動器複製到硬碟上,而是直接使用USB。如果您想要保留 USB 上的持久性,這會很有幫助。 並非每種情況都相同,因此這可能不適用於每種情況。
首先,您需要在系統中建立您的 USB,並確定實體磁碟機是什麼。我們假設您的驅動器安裝為/dev/sdb1
.因此,物理驅動器將是/dev/sdb
.
接下來,從終端機視窗輸入以下內容以建立.vmdk
指向 USB 隨身碟的檔案:
sudo vboxmanage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb
或者
sudo VBoxManage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb
然後你應該會看到類似這樣的內容:
RAW host disk access VMDK file /home/ravan/usb.vmdk created successfully.
筆記:有些人遇到了新建立文件的所有權問題。取得新文件的所有權:
sudo chown $USER:$USER ~/usb.vmdk
然後您所要做的就是將該.vmdk
檔案新增至您的 VirtualBox 虛擬機器並確保您可以啟動它。
編輯:
若要將您的使用者新增至vboxusers
群組中,請執行以下命令:
sudo usermod -a -G vboxusers username
若要將您的使用者新增至disk
群組中,請執行以下命令:
注意:將您的使用者新增至磁碟組可能很危險且有安全風險。這與使用 sudo 存取寫入原始磁碟一樣危險。
sudo usermod -a -G disk username
然後你必須重新啟動您的系統以使變更生效。
重啟前:
重啟後:
希望這可以幫助!
答案3
我幾天前才看到這篇文章。我不想使用 Plop Boot Manager,因為我的 USB 已經可以啟動了。
所以我嘗試透過創建將 USB 記憶棒指向 VMDK 磁碟(如 Terrance 答案中所示)vboxmanage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb
不幸的是,這不起作用......我chmod
和chown
磁碟usb.vmdk
,所以我能夠將它附加到虛擬機,但它根本不起作用。
最後,我嘗試了另一個解決方案,這個解決方案完美地運作了。在這裡(感謝吉安·桑托斯用於研究):
- 插入U盤並識別它(我的是
/dev/sdb
,運行Sabayon Linux); .vmdk
透過以下方式建立磁碟將原始裝置(即 USB 記憶棒)轉換為 VirtualBox 磁碟sudo VBoxManage convertfromraw /dev/sdb ./usb.vmdk --format vmdk
現在您已經
usb.vmdk
從可啟動 USB 記憶棒建立了一個磁碟。我還嘗試將dd
USB 記憶棒插入圖像檔案並.vmdk
從圖像檔案建立磁碟。它可以工作,以及.vdi
以前一種方式創建的磁碟(或從映像檔)現在,為已建立的磁碟授予權限,以便 VirtualBox 可以存取該檔案。這只是意味著將檔案擁有者變更為 vboxusers 群組中的用戶。如果您的 VirtualBox 安裝運作正常,那麼該擁有者可能是您:
sudo chown `whoami`:`whoami` ./usb.vmdk
現在,您只需將
usb.vmdk
磁碟附加到虛擬機器即可。但它必須連接到 IDE 控制器。我嘗試過SATA
但沒有成功。
此時,你就沒事了。
只需啟動新的虛擬機,按F12
並選擇可啟動驅動器。
享受!
答案4
如果您的 USB 驅動器是 EFI 可啟動驅動器,則 Plop Boot Manager 將無法運作,因為它不支援 EFI 啟動。在這種情況下對我有用的是使用 rEFInd 啟動管理器(http://www.rodsbooks.com/refind/)。
下載 rEFInd 可啟動 iso 從http://sourceforge.net/projects/refind/files/0.11.4/refind-cd-0.11.4.zip/download並解壓縮它。
在 VirtualBox 中開啟虛擬機器設定並附加 rEFInd CD ISO 檔案。
確保「系統」標籤中虛擬機器設定中的「啟用 EFI(僅限特殊作業系統)」選項已啟用。
啟動虛擬機,您應該會看到 rEFInd 啟動選單:
將您的 USB 隨身碟連接到 VirtualBox 中。
按退格鍵刷新選單或只需等待幾秒鐘,驅動器就會出現在選單中。
選擇您的 USB 隨身碟並按 Enter 鍵,您的 USB 隨身碟應該會開始啟動。