Windows 7 \Windows\WinSxS (元件存放區) 資料夾動輒 3~8 GB,且隨更新持續增長,被稱為系統盤「贅肉」。網路上流傳用 mklink /J (目錄聯結) 或 PendMoves/MoveFile 開機前移動的方法將其遷移至其他磁碟。本文深度解析此操作的原理、步驟、極高風險,並提供官方支援的安全替代方案。
WinSxS 為什麼大?能不能刪?
- 硬連結機制: WinSxS 內檔案多為硬連結至 \Windows\System32、\Windows\winsxs\Manifests 等實體檔案,實際佔用空間遠小於資料夾屬性顯示大小 (用
du -h / Sysinternals DiskUsage 查看真實佔用)。
- 不可刪除/移動: 系統運行時核心元件、驅動、更新載入器皆依賴 WinSxS 固定路徑。強行移動/刪除會導致:SFC 失效、DISM 修復失效、Windows Update 失效、開機失敗、藍畫面 (0xC000021A)。
- 官方立場: Microsoft 明確不支援移動/重命名/刪除 WinSxS,任何此類操作導致的問題概不負責。
網傳「符號連結遷移法」步驟與風險分析
- 下載
PendMoves、MoveFile (Sysinternals) 至 \Windows\System32。
- 管理員 CMD:
cd \windows → mklink /J winsxs.link winsxs.moved (建立目錄聯結)。
- 取得 WinSxS 資料夾完全控制權限 (TrustedInstaller → Administrators)。
movefile \windows\winsxs \windows\winsxs.moved → movefile \windows\winsxs.link \windows\winsxs (重命名 + 聯結替換)。
- 重開機 → 複製 \windows\winsxs.moved 內容至 D:\Windows\winsxs。
- 再次開機 →
rmdir winsxs → mklink /J winsxs D:\windows\winsxs → 刪除 winsxs.moved。
致命風險
| 風險 | 後果 | 發生機率 |
| Windows Update 失敗 | 無法安裝新更新、修復更新、功能更新,系統逐漸暴露於漏洞 | 極高 (近 100%) |
| SFC / DISM 修復失效 | 系統檔案損壞無法自動修復,需重灌 | 高 |
| 開機失敗 / 藍畫面 | 啟動載入器找不到關鍵元件 | 中高 |
| 軟體安裝/解除安裝失敗 | MSI 安裝程式依賴 WinSxS 組件註冊 | 中 |
| 權限修改導致 TrustedInstaller 所有權遺失 | 後續更新無法正確寫入 WinSxS | 高 |
官方支援的安全釋放空間方案
1. DISM 清理取代元件 (最推薦、零風險)
dism /online /cleanup-image /startcomponentcleanup
dism /online /cleanup-image /startcomponentcleanup /resetbase
/startcomponentcleanup:移除已取代的元件版本 (保留最新版)。
/resetbase:將目前版本設為基準,移除所有舊版本,**不可回復更新卸載**,但能釋放最大空間 (通常 1~3 GB)。
- 執行時間 5~30 分鐘,建議月度維護執行一次。
2. 磁碟清理 → 清理系統檔案 → 「Windows 更新清理」/「裝置驅動程式套件」/「臨時檔案」
- GUI 版 DISM 清理,勾選上述項目 → 確定,同樣安全有效。
3. 移除不需的 Windows 功能
- 控制台 → 程式和功能 → 開啟或關閉 Windows 功能 → 取消勾選:遊戲、Windows Media Center、列印/文件服務 (非列印伺服器)、Windows PowerShell 2.0 (若僅用 3.0+)、IIS (非開發機) 等。
4. 系統盤擴容 / 增加新磁碟掛載點
- 縮減資料盤 (D:) → 擴展系統盤 (C:) (需相鄰未配置空間,或用第三方分區工具移動分區)。
- 或新增實體 SSD/HDD,掛載至 \Windows\Installer、\Windows\SoftwareDistribution、\ProgramData 等大資料夾 (用目錄聯結
mklink /J,此為官方支援用法)。
5. 移動使用者設定檔 / ProgramData / Temp 目錄
- 安裝時用
autounattend.xml 指定 ProfilesDirectory、ProgramData 至非系統盤。
- 已安裝系統可用註冊表修改
ProfileImagePath、ProgramData 路徑 (需離線操作,風險中等)。
結論
移動 WinSxS 是「殺雞取卵」:短期釋放幾 GB,長期喪失系統自我修復、更新、穩定能力。請勿在生產環境嘗試。正解是:DISM /resetbase 定期清理 + 移除無用功能 + 系統盤擴容/掛載點分流。系統盤空間緊張時,先跑 dism /online /cleanup-image /analyzecomponentstore 分析真實可清理空間,再決定策略。保護 WinSxS 完整,就是保護 Windows 7 的生命線。