QEMU虛擬機直接從實體硬碟分割開機

Linux QEMU: Boot Windows 10 VM from physical hard drive.

我想要製作既可以從Linux QEMU虛擬機開機,又能從實體機開機的Windows。

把Windows的虛擬硬碟釋放到實體硬碟後,現在硬碟是這樣:

1
2
- SSD: openSUSE Tumbleweed Linux
- HDD: Windows 10

如果在Linux系統下想臨時使用Windows的話該怎麼辦?我可以把裝有Windows的HDD當虛擬機的硬碟拿來開機嗎?

可以,Virt Manager支援直接掛載實體機硬碟,並作為開機裝置。

因為我沒有安裝太多虛擬機專屬的驅動,不論是從虛擬機還是實體機開機,Windows都會自己調整,不至於混亂。

1. 尋找Windows掛載點

  1. lsblk檢查掛載點,發現/dev/sdb就是Windows 10的HDD。
1
2
3
4
5
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sdb      8:16   0 465.8G  0 disk
├─sdb1   8:17   0   100M  0 part
├─sdb2   8:18   0    16M  0 part
└─sdb3   8:19   0 465.6G  0 part /run/media/ivon/7A78849B78845831
  1. 取消掛載
1
umount /run/media/ivon/7A78849B78845831

2. QEMU掛載實體硬碟開機

  1. 新建或者利用現有的Windows 10開機組態,設定使用Q35 + UEFI。

  2. 開啟Virt Manager,編輯→偏好設定,啟用XML編輯。

  3. 編輯虛擬機,點選左下角的「新增硬體」。

  4. 點選 新增「儲存」。雖然說應該能直接加入實體硬碟,但會出現'/dev/sdb' does not match the expected format 'dos'的錯誤。因此點選旁邊的「編輯XML」,直接加入以下內容後確認:

1
2
3
4
5
6
<disk type="block" device="disk">
  <driver name="qemu" type="raw"/>
  <source dev="/dev/sdb"/>
  <target dev="sda" bus="sata"/>
  <address type="drive" controller="0" bus="0" target="0" unit="0"/>
</disk>
  1. 點選確定,虛擬機的裝置列表會多出實體硬碟。

  2. 給虛擬機開機,等待緩慢的HDD開機完成。

3. 參考資料

如果本網站文章對您有幫助,歡迎贊助我。