[分享] 將現有Win10 VM升級到Win11

看板Linux作者 (AKS-74n)時間3年前 (2021/10/07 10:55), 編輯推噓3(305)
留言8則, 6人參與, 3年前最新討論串1/1
前天M$正式發佈了Windows 11,雖然可能有些在很早之前的Preview版都知道怎麼操作 不過還是來分享一下怎麼把現有的Win10 VM在不重灌的情況下升級成Win11 目前大多數人都知道要升級成Win11,必須先滿足兩個條件 1. BIOS必須啟動並且OS已經是處在Secure Boot模式 2. 必須具備TPM,並且至少得是2.0版本 基於上述兩個需求,原Win10 VM也必須是在當初以UEFI模式安裝系統的情況下才可升級 當然網路上也可以查到怎麼樣不重灌從Legacy BIOS改成UEFI開機的方法 不過這不在本篇要介紹的範圍 1. 更新KVM相關驅動 VirtIO相關的Windows驅動在之前都是沒有經過WHQL認證的,這在Secure Boot上會有問題 不過最新的穩定版VirtIO驅動(0.1.208+)已經都有了WHQL認證 因此第一步是先更新這些驅動到最新版 2. 替換成支援Secure Boot的OVMF檔案 再來只要把現有的OVMF檔案換成secboot類型的即可 由於Win11的安裝ISO還有升級小幫手並不會偵測系統是否處在Secure Boot狀態 所以我們只要確保OVMF有Secure Boot功能即可,並不一定需要去啟用它 但有一點要留意,有些Linux distro所推送的OVMF_Sec並不會包含M$的簽章 目前知道的是Fedora與Ubuntu官方repo所提供的OVMF_Sec都已經包含簽章 其他的比如ArchLinux是沒有包含的,需要另外從其他distro上找 確定OK後,就可以直接替換檔案,方法是直接編輯VM的XML 把<loader>中的OVMF_CODE.fd改成OVMF_CODE.secboot.fd即可 另外除非你想要重置VM成啟用Secure Boot狀態,否則不需要去動xxx_VARS.fd (xxx=VM名稱) 如果想啟用Secure Boot,則必須再做額外兩個修改 a. 將原先載入OVMF_CODE.secboot.fd的loader加入secure='yes'參數,變成: <loader readonly='yes' type='pflash' secure='yes'>/path/of/OVMF_CODE.secboot.fd </loader> b. 找到OVMF_VARS.secboot.fd然後覆蓋掉原本的xxx_VARS.fd 3. 增加CPU features參數 之後還需要在XML內的<features>增加一個參數進去 <smm state='on'/> 加入後就像這樣 https://i.imgur.com/nmWHL3P.png
4. 加入TPM TPM有兩種加入方式,一個是直接用KVM模擬的TPM,另一個是直接passthrough 後者的優點是日後比較不會遇到相容性問題,缺點是只能給一個VM使用 而且必須要先進BIOS清除前一筆TPM資料(如果有的話) 先講模擬TPM,KVM支援兩種模擬方式,分別是CRB及TIS CRB僅支援TPM 2.0、TIS則支援大多數TPM版本 首先必須先安裝swtpm這個套件才可以使用模擬TPM,Fedora及Arch預設的repo可直接安裝 Ubuntu/Debian則要找第三方來源 裝好後,直接透過virt-manager或者是修改XML的方式加入: <tpm module='tpm-crb'> <backend type='emulator' version='2.0'/> </tpm> 如果在使用CRB的情況下出現以下錯誤,則可以改用TIS試試 "qemu-system-x86_64: Requested buffer size of 3968 is smaller than host TPM's fixed buffer size of 4096" 若要使用硬體TPM,在從BIOS啟用TPM功能後(AMD fTPM或是Intel PTT) 先看一下是否有在/dev內出現tpm0這個device 之後編輯XML加入TPM: <tpm module='tpm-tis'> <backend type='passthrough'> <device path='/dev/tpm0'/> </backend> </tpm> 驅動、Secure Boot、與TPM都搞定後,便可以進到Win10 VM用M$的檢測工具 或者是Win11升級小幫手驗證是否可以升級 這些變動沒辦法改變原先Windows Update的判定狀態,所以沒辦直接用其升級 不過只要升級小幫手判定OK就可以直接做升級了 昨天經過這些修改後升級成功,目前VM內的系統已經是Win11 雖然用處不算大,還是給各位做一個參考 -- https://i.imgur.com/paUBacY.png
https://i.imgur.com/vsJ0Suy.png
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.14.175 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1633575353.A.9EB.html

10/07 12:00, 3年前 , 1F
錯板(誤
10/07 12:00, 1F

10/07 13:32, 3年前 , 2F
我的NB沒TPM,要升win11只能活在VM中
10/07 13:32, 2F

10/07 13:41, 3年前 , 3F
珍惜不會自動更新的Win7P VM,所以不升級 XD
10/07 13:41, 3F

10/07 21:23, 3年前 , 4F
感覺應該轉去微軟版XD
10/07 21:23, 4F

10/08 00:28, 3年前 , 5F
感謝分享 但 若非工作上 離不開office
10/08 00:28, 5F

10/08 00:29, 3年前 , 6F
我真的完全不想用 windows
10/08 00:29, 6F

10/08 11:07, 3年前 , 7F
(安慰樓上)還好我公司用的是office 365,勉強可以用瀏
10/08 11:07, 7F

10/08 11:07, 3年前 , 8F
覽器用office,運氣比你好一些
10/08 11:07, 8F
文章代碼(AID): #1XNc6vdh (Linux)
文章代碼(AID): #1XNc6vdh (Linux)