Kvm-Virtualization

在不重新啟動的情況下將 Windows 來賓從 VirtualBox 遷移到 KVM?

  • May 6, 2021

windows會檢查virtualbox VM的hardwareuuid以進行啟動。有沒有辦法在 KVM 中使用相同的 UUID 來防止重新啟動?

Windows 使用多個硬體 uuid 進行啟動。不僅僅是主機板或cpu uuid。它掃描許多硬體。如果讓我們說超過 %20 的硬體 uuid 更改它會撤銷許可證或需要重新啟動。

我不確定 VirtualBox,但在 VMWare 案例中,UUID 來自 VM 目錄名稱和位置。這就是為什麼它會詢問您是否移動或複制了它。

您可以嘗試使用 wmic 從命令行獲取盡可能多的 uuid,例如:

wmic csproduct get "UUID"

或者

wmic nic get "MACAddress"

然後嘗試使用編輯並輸入相同的 uuidvirsh edit YourMachineName

你可能是第一個管理這個的人:)因為我從未見過有人提到它。

作為最終答案,Windows 啟動並不是那麼簡單。

編輯(2021 年 5 月 6 日): 在 KVM 中,可以自定義然後 OOBE windows 10 使其表現得像全新安裝一樣。您還可以自定義 pci-e root hub 架構,為 rams 提供序列號等。作為冰山一角,linux 上 qemu-kvm 的 libvirt 的配置 xml:

<domain type='kvm'>
 <name>VMNAME</name>
 <uuid>SMBIOSUUID</uuid>
 <memory unit='KiB'>3384000</memory>
 <currentMemory unit='KiB'>3384000</currentMemory>
 <vcpu placement='static' current='2'>4</vcpu>
 <sysinfo type='smbios'>
   <bios>
     <entry name='vendor'>CWRK</entry>
     <entry name='version'>1.32</entry>
     <entry name='date'>11/10/2020</entry>
     <entry name='release'>1.1.3</entry>
   </bios>
   <system>
     <entry name='manufacturer'>CWRK</entry>
     <entry name='product'>RCKSLD-WS</entry>
     <entry name='version'>1.0</entry>
     <entry name='serial'>SYSSERIAL</entry>
     <entry name='uuid'>SMBIOSUUID</entry>
     <entry name='sku'>SMBIOSSKU</entry>
   </system>
   <baseBoard>
     <entry name='manufacturer'>CWRK</entry>
     <entry name='product'>RCS001</entry>
     <entry name='version'>0B12201 Pro</entry>
     <entry name='serial'>BASEBOARDSERIAL</entry>
   </baseBoard>
 </sysinfo>
 <os>
   <type arch='x86_64' machine='pc-q35-2.11'>hvm</type>
   <loader readonly='yes' type='pflash'>OVMFCODE</loader>
   <nvram>OVMFVARS</nvram>
   <boot dev='hd'/>
   <smbios mode='sysinfo'/>
 </os>

如果可以,請遷移,甚至考慮嵌套虛擬化。可能是 Windows-VirtualBox(Ubuntu-KVM (Identical HW Windows Install))

引用自:https://serverfault.com/questions/1030260