這兩天剛升級老的二奶機Win10到Win11,老機器配置i7-4790K + Z97-AR + GTX 970 + 32G RAM。
這個主機板是支援單獨插一個TPM晶片的,不過花那個錢另外買就不值了。這主機板也支援UEFI。
因為我升級時要保留Win10的應用程式和資料,所以是不能從優盤裡的Win11啟動系統來升級的,只能在Win10中直接執行Win11的setup.exe。
試了各種辦法死活不管用(登錄檔裡設定AllowUpgradesWithUnsupportedTPMOrCPU或者BypassTPMCheck等、用Rufus製作remove TPM check的優盤等),都在TPM檢測透過之後的那一步才報錯,錯誤資訊是“無法判斷你的電腦是否已經準備好繼續安裝Windows 11,請嘗試重新啟動安裝程式”。
最後用下面這個MCT指令碼升級到了Win11:
https://github.com/AveYo/MediaCreationTool.bat
執行指令碼前,一定要先在BIOS裡關閉secure boot,不然會在機器重啟時報"SAFE_OS階段錯誤"。可能還要關閉Intel PTT,但我的BIOS沒這個特性,沒處理。
執行MediaCreationTool.bat,在出來的選單中選擇11,再選擇Auto Upgrade,然後就完事了,後面的步驟都是自動的。
這個指令碼從微軟下載Win11的*.ESD檔案是走的BITS服務,可以用系統自帶的bitsadmin工具檢視下載進度、下載錯誤資訊、設定BITS下載代理。
比如:
bitsadmin /monitor 可以檢視下載進度的位元組數,預設5秒重新整理間隔。
bitsadmin /list /allusers 可以檢視所有的下載任務、出錯原因等。
我機器上因為有一個TAP虛擬網路卡,導致BITS服務下載*.esd時進度一直卡在0%。用bitsadmin看了錯誤原因是沒檢測到可用的網路介面,禁用了虛擬網路卡後才能正常下載。
bitsadmin的命令列引數的手冊:
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/bitsadmin