跳到主要內容

2024-01 適用於 x64 系統 Windows 10 Version 22H2 的安全性更新 (KB5034441) 安裝失敗

 今年(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終於成功。


Update:
應朋友要求,在底下寫操作步驟,原步驟要感謝論壇的Daishuku大大,此處稍作調整修正順序,並加入個人的做法。
  1. 先用管理員身份執行命令提示字元,先關閉WinRE還原功能,輸入 reagentc /disable。
  2. 在本機建立一個暫存目錄,因為我另外有一顆SSD,所以我建立為D:\TEMP,指令為 mkdir D:\TEMP
  3. 掛載 Windows 10 22H2 ISO檔,在此假設為 E:
  4. 使用 DISM指令解出檔案 install.wim,輸入 
    dism /Export-Image /SourceImageFile:"E:\sources\install.esd" /SourceIndex:1 /DestinationImageFile:"D:\Temp\install.wim" /Compress:none /checkintegrity
  5. 再建立一個暫存目錄供 install.wim 掛載
    mkdir D:\TEMP\install
  6. 輸入以下指令掛載install.wim
    dism /mount-wim /wimfile:"D:\Temp\install.wim" /index:1 /mountdir:"D:\Temp\install" /readonly
  7. 輸入以下指令以複製新的回復資料
    copy D:\Temp\install\Windows\System32\Recovery\*.* C:\windows\system32\Recovery\
  8. 解除 install.wim 掛載
    DISM /unmount-Wim /MountDir:"D:\Temp\install" /discard
  9. 再輸入 diskpart ,list disk 找到系統磁碟的disk
  10. 以我的例子是 disk 0,所以就 SELECT disk 0,再輸入 list part
  11. 可以看到我這裡是 partition 4,復原分區WinRE在磁碟管理工具 GUI是無法刪除的,所以接著輸入 select part 4 ,再輸入 delete partition  override 
  12. 接下來若沒有空間,就得要先用磁碟管理工具壓縮磁碟區,讓Partition縮小
  13. 若是 Primary Partition,壓縮完就可以進行下一步,若是如下圖這種情況,是Extended Partition (只發生在MBR分割) ,還需要使用前文提到的Gparted Live CD 去壓縮,技術細節請參考 Wikipedia Disk partitioning
  14. 到此步磁碟最後應該空出1024MB以上的空間,用管理員身份執行命令提示字元,輸入 diskpart 命令,輸入 list disk ,select disk [你的磁碟代號]
  15. 檢查磁碟分割樣式是 GUID 磁碟分割表格 (GPT) 或主開機記錄 (MBR)。  若要這麼做,請執行 list disk。 檢查 “GPT” 欄位中是否有星號字元 (*)。  如果有星號字元 (*),則磁碟機為 GPT。 否則,磁碟機為 MBR。
  16. 如果磁碟是 GPT,執行 create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac 後接命令 gpt attributes =0x8000000000000001
  17. 如果磁碟是 MBR,執行 create partition primary id=27
  18. 執行 format quick fs=ntfs label="Windows RE tools"
  19. 確認 WinRE 磁碟分區已建立,執行 list vol
  20. 結束 diskpart,執行 exit
  21. 重新啟用 WinRE還原,執行 reagentc /enable
  22. 關閉命令提示字完,重新執行 Windows Update。


留言

這個網誌中的熱門文章

DBeaver 介面語言

DBeaver是我個人頗常用的一套跨平台Database管理工具,最近升級後發現Windows版本居然變成簡體中文,而且無法切換為英文。

自然人憑證讀卡機驅動程式

鳥毅用的是第一代的自然人憑證讀卡機,EZ100PU(後來有同事買EZmini可以讀SIM卡似乎更好),每年報稅時用一次。 本來只是要申請些政府業務,一時之間找不到光碟,沒想到在 驅動程式下載 居然看到Linux和Mac的驅動程式,剩下的就是政府單位的網頁和程式應該改版了吧!!!

如何將較高版本SQL Server複製到低版本SQL Server (降級為舊版)並保留權限及資料庫圖表

一般若是要將SQL Server裡的Database轉往其他Server時,最簡單的方式就是備份(Backup)後再還原(Restore),或者是䣃離(detach)後附加(attach)。 但是很不幸地,若是由較低版本(e.g. 2008)到較高版本(e.g. 2012)要怎麼辦呢?