今年(2024)一月中開始,就發現一直有更新失敗訊息,就是本文的主題 KB5034441。
因為最簡單的方法就是刪掉WinRE修復磁碟分區,所以我也沒有去管它。但是看了總是不順眼,於是手動去找這個程式,發現在Microsoft Update Catalog上也沒有。看到這句「此更新需要修復磁碟分割區中有 250 MB 的可用空間才可成功安裝。」,但是我電腦上的WinRE修復磁碟分區明明有256MB,還是去照著手動調整磁碟分割區大小以安裝 WinRE 更新的指示重試一次,結果Windows Update還是失敗。
後來就沒去管他,直到前幾天更新又看到它,一把懶趴火燒起來,查到論壇的討論才知道22H2 版本的 WinRE.wim 達到 777MB,所以新版的WinRE分區至少要800MB以上,我就用Gparted Live CD調整分區,重建一個 1GB的WinRE分區,再重新安裝Windows Update終於成功。
應朋友要求,在底下寫操作步驟,原步驟要感謝論壇的Daishuku大大,此處稍作調整修正順序,並加入個人的做法。
- 先用管理員身份執行命令提示字元,先關閉WinRE還原功能,輸入 reagentc /disable。
- 在本機建立一個暫存目錄,因為我另外有一顆SSD,所以我建立為D:\TEMP,指令為 mkdir D:\TEMP
- 掛載 Windows 10 22H2 ISO檔,在此假設為 E:
- 使用 DISM指令解出檔案 install.wim,輸入
dism /Export-Image /SourceImageFile:"E:\sources\install.esd" /SourceIndex:1 /DestinationImageFile:"D:\Temp\install.wim" /Compress:none /checkintegrity - 再建立一個暫存目錄供 install.wim 掛載
mkdir D:\TEMP\install - 輸入以下指令掛載install.wim
dism /mount-wim /wimfile:"D:\Temp\install.wim" /index:1 /mountdir:"D:\Temp\install" /readonly - 輸入以下指令以複製新的回復資料
copy D:\Temp\install\Windows\System32\Recovery\*.* C:\windows\system32\Recovery\ - 解除 install.wim 掛載
DISM /unmount-Wim /MountDir:"D:\Temp\install" /discard - 再輸入 diskpart ,list disk 找到系統磁碟的disk
- 以我的例子是 disk 0,所以就 SELECT disk 0,再輸入 list part
- 可以看到我這裡是 partition 4,復原分區WinRE在磁碟管理工具 GUI是無法刪除的,所以接著輸入 select part 4 ,再輸入 delete partition override
- 若是 Primary Partition,壓縮完就可以進行下一步,若是如下圖這種情況,是Extended Partition (只發生在MBR分割) ,還需要使用前文提到的Gparted Live CD 去壓縮,技術細節請參考 Wikipedia Disk partitioning。
- 到此步磁碟最後應該空出1024MB以上的空間,用管理員身份執行命令提示字元,輸入 diskpart 命令,輸入 list disk ,select disk [你的磁碟代號]
- 檢查磁碟分割樣式是 GUID 磁碟分割表格 (GPT) 或主開機記錄 (MBR)。 若要這麼做,請執行 list disk。 檢查 “GPT” 欄位中是否有星號字元 (*)。 如果有星號字元 (*),則磁碟機為 GPT。 否則,磁碟機為 MBR。
- 如果磁碟是 GPT,執行 create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac 後接命令 gpt attributes =0x8000000000000001
- 如果磁碟是 MBR,執行 create partition primary id=27
- 執行 format quick fs=ntfs label="Windows RE tools"
- 確認 WinRE 磁碟分區已建立,執行 list vol
- 結束 diskpart,執行 exit
- 重新啟用 WinRE還原,執行 reagentc /enable
- 關閉命令提示字完,重新執行 Windows Update。
留言