⚡ 站長快讀:核心重點
- 文章屬性:疑難排除
- 適用系統:Windows 10 22H2、Windows 11 23H2 以上
- 難易度 / 耗時:⭐⭐(方法一、二)、⭐⭐⭐(
/ResetBase)/ 分析 5 分鐘內,清理約 10–40 分鐘 - 核心結論:WinSxS 在檔案總管看到的容量多半是 hard link 重複計算的假數字;真正算得上負擔的只有備份與快取兩項,而且「負擔」不等於「一定回收得到」。
- 適用對象:C 槽爆滿、發現 WinSxS 十幾 GB,想知道能不能刪的人。
📌 快速答案
一句話答案:WinSxS 的真實佔用要用 DISM AnalyzeComponentStore 的分析報告來算,可清的部分只能交給系統內建指令處理,絕不能手動刪除資料夾或用第三方工具動它。
🧰 開始前的準備
- 適用系統:Windows 10 22H2、Windows 11 23H2 以上(含 24H2 / 25H2 / 26H1)
- 權限需求:系統管理員(本文所有 DISM 指令都必須以系統管理員身分執行)
- 需要工具:命令提示字元或 Windows 終端機(系統內建)、工作排程器(選用,系統內建)
- 預計耗時:分析約 1–5 分鐘;清理視更新累積量而定,10–40 分鐘不等
⛔ 停止條件(符合任一項,請先別動手)
- 不確定自己的 Windows 版本或組建編號
- 有未完成的 Windows Update(系統顯示「需要重新開機」)
- 正在排查更新災情,接下來可能需要解除安裝某個更新
- 公司或學校管控的設備,且沒有 IT 授權
- 打算執行方法三,但沒有可用的還原點或系統映像備份
🔍 症狀描述與錯誤訊息
多數人是這樣發現 WinSxS 的:C 槽只剩幾 GB,拿容量分析工具或檔案總管的「內容」一層一層往下查,最後停在 C:\Windows\WinSxS——這個資料夾顯示八 GB、十二 GB,甚至比整個 Program Files 還大。接著上網搜尋,會看到兩派完全相反的說法:一派叫你直接刪掉、一派叫你跑 DISM 指令,還有一堆「系統瘦身」工具宣稱能幫你清乾淨。
你會看到的典型畫面是:
檔案總管 → 對
C:\Windows\WinSxS按右鍵 → 內容 → 大小:12.4 GB(佔用空間:12.4 GB)
或者是磁碟清理跑完、暫存檔也刪了,C 槽卻幾乎沒有變化,而 WinSxS 依舊維持兩位數 GB。
這裡最常見的錯誤結論是:「WinSxS 是更新留下來的備份垃圾,整個刪掉就能省十幾 GB。」 這句話在兩個層次上都是錯的:第一,你看到的那個數字本來就不是它真正佔用的空間;第二,就算真的想清,也只有一小部分可以回收,而且刪錯的代價是系統無法開機、無法更新。
🔎 問題根因:你看到的數字是重複計算的
直接結論:檔案總管算目錄大小時不會處理 hard link,所以 WinSxS 裡同一份資料被算了很多次。
微軟官方文件寫得很白:元件存放區(WinSxS)裡的檔案看起來像是同時存在於作業系統的多個位置,但實際上通常只有一份,其餘都是 hard link;而像檔案總管這類工具在計算目錄大小時,並不會考慮裡面的檔案是不是 hard link,因此讓人誤以為 WinSxS 佔掉的磁碟空間比實際多很多。
hard link 是檔案系統物件,讓兩個檔案指向磁碟上的同一個位置。官方用一個例子解釋這件事有多反直覺:目錄 A 有 1.txt、2.txt、3.txt,目錄 B 有 4.txt;1.txt 與 2.txt 互為 hard link、共 1 MB 資料,3.txt 與 4.txt 互為 hard link、共 2 MB 資料。那麼「目錄 A 有多大」的答案取決於你要做什麼:
- 逐一讀取 A 裡的所有檔案 → 讀到 4 MB
- 把 A 全部複製到別的位置 → 複製 3 MB 資料
- 刪掉 A 想換回空間 → 只會真的省下 1 MB
第三種答案,才是「刪掉 WinSxS 能省多少」的正確算法。與系統其他位置 hard link 在一起的檔案是系統運作必需,本來就不該算在 WinSxS 頭上。
🔬 底層機制:元件存放區到底存了什麼
Windows 元件存放區最早在 Windows XP 出現,用來支援 side-by-side 組件;從 Windows Vista 開始擴充成追蹤與服務「組成整個作業系統的所有元件」。元件會追蹤檔案、目錄、登錄機碼與服務等物件,特定版本的元件再被收攏成「套件(package)」,而 Windows Update 與 DISM 就是用套件來更新 Windows。
換句話說,WinSxS 不是垃圾桶,它是 Windows 的維修零件庫,以下這些事情全都靠它:
- 用 Windows Update 安裝新版元件
- 啟用或停用 Windows 功能(例如 Hyper-V、.NET Framework 3.5)
- 在不同 Windows 版本之間移轉
- 從檔案損毀或開機失敗中復原
- 解除安裝有問題的更新
- 執行使用 side-by-side 組件的程式
這也解釋了為什麼它會隨時間變大:每次累積更新裝進來,舊版元件會被保留一段時間,好讓系統在新版元件出問題時能退回去;過一段時間之後,系統才會自動把這些舊元件移除。順帶一提,從 Windows 11 24H2 開始,最新的累積更新可能會有「檢查點累積更新」作為前置需求,更新的組成方式比過去更複雜——這也是不該用手動刪檔案去干預服務堆疊的原因之一。
🛠️ 正確計算:用 DISM 問出真實大小
直接結論:不要看檔案總管,改問 DISM。 以系統管理員身分開啟命令提示字元,執行:
Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore官方文件提供的範例輸出長這樣(以下為微軟文件的示例,非本站實測數據):
Component Store (WinSxS) information:
Windows Explorer Reported Size of Component Store : 4.98 GB
Actual Size of Component Store : 4.88 GB
Shared with Windows : 4.38 GB
Backups and Disabled Features : 506.90 MB
Cache and Temporary Data : 279.52 KB
Date of Last Cleanup : 2021-06-24 23:32:22
Number of Reclaimable Packages : 0
Component Store Cleanup Recommended : No
各欄位怎麼讀:
| 欄位 | 意義 | 算不算真正的負擔 |
|---|---|---|
| Windows Explorer Reported Size | 檔案總管會報出來的大小,不考慮 hard link | ❌ 參考值,別當真 |
| Actual Size of Component Store | 已計入 WinSxS 內部的 hard link,但仍包含與系統共用的檔案 | ⚠️ 不等於可回收量 |
| Shared with Windows | 以 hard link 同時出現在存放區與其他位置、供系統正常運作的檔案 | ❌ 不算存放區負擔 |
| Backups and Disabled Features | 為了因應新元件失敗而保留的備份、可再啟用的功能,以及中繼資料 | ✅ 算 |
| Cache and Temporary Data | 元件存放區內部用來加速服務作業的檔案 | ✅ 算 |
官方明載的算式:元件存放區真正的額外負擔 = Backups and Disabled Features + Cache and Temporary Data。以上面那份官方範例來說,WinSxS 看起來是 4.98 GB,實際負擔只有約 507 MB——差了將近十倍。
另外兩個欄位是行動依據:Number of Reclaimable Packages 是系統上可被清理移除的被取代套件數量,Component Store Cleanup Recommended 則是微軟直接告訴你「清了會不會有效果」。如果這一行顯示 No,就到此為止,不要再往下做。(官方原文只說「顯示需要清理時就依清理文件處理」,「顯示 No 就收手」是站長依此欄位定義給的判斷建議。)
重點摘要:
- 檔案總管的數字沒有參考價值,唯一該信的是 DISM 的分析報告
Actual Size也不是可回收量,它包含系統共用的檔案- 真正的負擔只有備份與快取兩項相加
Component Store Cleanup Recommended: No= 收手Number of Reclaimable Packages為 0 時,清理不會換回明顯空間
🛠️ 解決方案:三種清理方式,代價各不相同

方法一:讓系統自己清(最保守)
Windows 內建 StartComponentCleanup 排程工作,會在系統閒置時自動清理元件。它的行為刻意保守:自動執行時,會等待更新元件安裝至少 30 天之後,才移除該元件的舊版本;如果你手動觸發它,則有 1 小時逾時限制,可能不會完全清完所有檔案。
手動觸發(系統管理員身分):
schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"也可以開啟工作排程器,展開到「工作排程器程式庫\Microsoft\Windows\Servicing\StartComponentCleanup」後按「執行」。
方法二:DISM 立即清理(多數人該用這個)
Dism.exe /online /Cleanup-Image /StartComponentCleanup結果與方法一相近,差別在於:被更新元件的舊版本會立即刪除、沒有 30 天寬限期,而且沒有 1 小時的逾時限制。對「剛裝完一輪大更新、確認系統穩定、想把舊元件清掉」的情境,這是最合適的做法。
方法三:加上 /ResetBase(⭐⭐⭐ 不可逆,想清楚再做)
⚠️ 高風險操作警語:執行前請先建立系統還原點或系統映像備份,確認筆電接上電源、桌機供電穩定,過程中不要中斷或強制關機。
Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase加上 /ResetBase 會移除元件存放區中每一個元件的所有被取代版本,能進一步縮小存放區。代價寫在官方警告裡:指令完成後,所有既有的更新套件都無法再解除安裝;不過這不會擋住未來更新套件的解除安裝。
還有兩個少人提到的細節:
- 從 Windows 10 1607 開始可以搭配
/Defer使用,但官方明講這只該用在工廠情境,也就是DISM /Resetbase需要超過 30 分鐘才能完成的時候,把長時間作業延到下次自動維護。一般使用者不需要碰。 - 想知道這台機器上次跑
/ResetBase是什麼時候,可以查登錄檔路徑HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing底下的LastResetBase_UTC項目。
補充:圖形介面的做法
不想碰指令的話,官方也把「磁碟清理」列為縮小元件存放區的方式之一——清理更新的選項可以減少元件存放區大小。在目前的 Windows 11,一般會從「設定 → 系統 → 儲存空間 → 清理建議」進去,或在檔案總管選取磁碟機後,由右上角「⋯」選單叫出傳統磁碟清理工具(依第二級技術媒體整理,Windows 11 22H2 前後磁碟機右鍵內容裡的舊入口已被取代;微軟未就此版本分界發布正式公告)。效果通常比方法二保守,但操作門檻最低。
⛔ 三件絕對不要做的事
- 手動刪除 WinSxS 內的檔案或整個資料夾。 官方警告寫得很直接:有些重要系統檔案只存在於 WinSxS,刪除可能嚴重損壞系統,導致電腦無法開機、也無法更新。
- 用第三方「系統瘦身」工具去動元件存放區。 服務堆疊的狀態一致性不是靠檔案存在與否維持的,外部工具刪檔案不會同步中繼資料。
- 停用元件清理。 微軟強烈建議不要停用元件清理——它是維持系統效能與釋放空間的必要機制,停用會讓不必要的檔案持續累積。
✅ 驗證修復結果
清理跑完、重新開機後,再跑一次分析指令:
Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore三個地方要對:
Date of Last Cleanup更新成今天的日期Number of Reclaimable Packages降為 0(或明顯變少)Component Store Cleanup Recommended顯示No
如果想確認服務堆疊沒有受損,再跑一次系統檔案與映像健康檢查即可;完整的檢查順序與各指令差異,可參考站內的 SFC 與 DISM 指令修復教學。
🔙 萬一翻車:回退步驟
方法一、方法二:被刪掉的是已被取代的舊版元件,系統本體不受影響。若清理後出現異常,依序執行(每行一條指令,不要串在同一行):
Dism.exe /Online /Cleanup-Image /RestoreHealthsfc /scannow方法三 /ResetBase:沒有回退路徑。 這是本文唯一不可逆的操作——指令完成後既有更新無法解除安裝,這個狀態沒有指令可以還原。萬一之後某個既有更新造成問題,只剩下三條路:①用清理前建立的系統還原點或映像備份還原;②執行就地升級修復安裝把系統檔案重鋪一次;③重灌。這也是前面要求先做備份的原因。
清理過程中斷電或被強制中斷:重新開機後先跑 Dism.exe /Online /Cleanup-Image /RestoreHealth,確認映像健康後再決定要不要重跑清理。
💡 總結:預防再次發生
站長我看過太多 C 槽急救的案例,問題幾乎不是出在「不知道怎麼清」,而是出在順序反了——先動手刪,再回頭問這東西是幹嘛的。WinSxS 是最典型的受害者:它長得像垃圾堆,實際上是 Windows 的維修零件庫,而且你看到的那個數字從一開始就不是它真正吃掉的空間。
養成三個習慣,這題就不會再來煩你:
- 先量再清:任何時候想動 WinSxS,第一個動作永遠是
AnalyzeComponentStore,而不是刪除鍵。系統說Cleanup Recommended: No,就代表沒得清,不必再折騰。 - 分清楚 WinSxS 與 Windows.old:就地升級後產生的
C:\Windows.old是舊系統的完整備份,系統會在保留期過後自動清除,那才是動輒十幾 GB 的大宗,和元件存放區是兩回事。 - 大更新後給它幾天:剛裝完累積更新時存放區會暫時變大,那是保留舊元件供回退用的正常行為;確認系統穩定後再清,才不會把救命的退路一起清掉。
如果你的 C 槽本來就長期吃緊,與其反覆跟 WinSxS 拉扯,不如從整體配置下手——站內另有一篇Windows 11 24H2 減肥指南談的是關閉不需要的功能與釋放 SSD 空間,和本文的「正確計算元件存放區」剛好互補:一個管系統設定面,一個管服務堆疊面。
❓ 常見問題
Q:WinSxS 可以直接刪掉嗎?
不行。微軟官方文件明確警告:有些重要的系統檔案只存在於 WinSxS 資料夾,刪除該資料夾內的檔案或整個資料夾,可能嚴重損壞系統,導致電腦無法開機並且無法更新。要縮小它只能用內建工具。
Q:清理完為什麼 C 槽沒有多出很多空間?
因為可回收的本來就只有「備份與停用功能」加「快取與暫存資料」兩項,不是你在檔案總管看到的那個數字。如果分析報告顯示 Number of Reclaimable Packages: 0,那就代表沒有可清的被取代套件,回收量趨近於零是正常結果。
Q:跑了 /ResetBase 之後,以後的更新還能解除安裝嗎?
可以。官方說明是:指令完成後既有的更新套件無法解除安裝,但這不會阻擋未來更新套件的解除安裝。真正的風險期是你已經裝好、但還沒確認穩定的那些更新。
Q:修完之後又復發怎麼辦?
元件存放區隨更新變大是設計行為,不是故障。定期(例如每半年,或每次功能更新穩定後)跑一次分析,依 Component Store Cleanup Recommended 決定要不要清即可;平常就讓 StartComponentCleanup 排程工作自己跑,不需要人工介入。
🔗 延伸閱讀
- C 槽又爆了?Windows 10/11 清理磁碟空間終極指南
- Windows 保留儲存空間是什麼?該不該關掉
- CompactOS 是什麼?Windows 系統壓縮完整解析
- Windows Update 一直失敗怎麼辦?重設 SoftwareDistribution 與 Catroot2
📎 參考資料來源
📖 第一級|廠商官方:
- Manage the Component Store — Microsoft Learn — 2026-08-15 查證
- Determine the Actual Size of the WinSxS Folder — Microsoft Learn — 2026-08-15 查證
- Clean Up the WinSxS Folder — Microsoft Learn — 2026-08-15 查證
- DISM Operating System Package Servicing Command-Line Options — Microsoft Learn — 2026-08-15 查證
- Windows 11 release information — Microsoft Learn — 2026-08-15 查證
📖 第二級|權威技術媒體:
- 遇到「儲存空間不足」時的建議處理方式 — ASUS 官方支援 — 2026-08-15 查證
- 如何於 Windows 11 22H2 清理磁碟空間? — T客邦 — 2026-08-15 查證
⚠️ 本文核心事實以第一級為準,第二級為補充。本文為官方文件與權威來源交叉查證之整理(證據等級 E3),非第一手實測。
📅 本文查證戳記:2026-08-15 依據 Microsoft Learn 現行文件撰寫。
若你在後續版本遇到步驟失效,歡迎在留言區回報,站長會更新文章。
