Windows 7 長期使用後,系統碟 (C:) 空間常因累積大量暫存檔而縮水。雖可手動清理,但治標不治本。透過修改環境變數 TEMP 與 TMP,將使用者與系統暫存檔導向資料碟 (如 D:、E:),可永久解決系統碟空間被暫存檔佔用的問題。本文提供圖文教學與注意事項。



D:\Temp\UserTempD:\Temp\SystemTempD:\Temp\ ├── UserTemp\ (使用者 TEMP/TMP) └── SystemTemp\ (系統 TEMP/TMP)
建立資料夾時,系統暫存資料夾需給予 SYSTEM、Administrators 完整控制權限;使用者暫存資料夾給予該使用者完整控制權限。
echo %TEMP%echo %TMP%| 項目 | 說明 |
|---|---|
| 權限設定 | 新路徑資料夾權限不正確會導致程式無法建立暫存檔、安裝失敗、Windows Update 錯誤 (0x80070002 等)。 |
| 網路磁碟/可移動裝置 | 嚴禁 將 TEMP/TMP 指向網路磁碟、USB 隨身碟、SD 卡,離線/拔除時會導致系統嚴重錯誤。 |
| 系統變數 vs 使用者變數 | 系統變數影響所有使用者與系統服務;使用者變數僅影響該使用者。建議兩者皆修改且指向不同資料夾。 |
| 程式硬編碼路徑 | 極少數舊程式硬編碼 C:\Windows\Temp 或 %SystemRoot%\Temp,不受環境變數影響,無法透過此法遷移。 |
| 磁碟清理工具 | Windows 磁碟清理仍會掃描舊路徑 (%SystemRoot%\Temp),新路徑需手動清理或寫排程腳本。 |
若不想動環境變數,可用 mklink /D 將原暫存資料夾導向新位置:
REM 以管理員身分執行 CMD move C:\Windows\Temp D:\Temp\SystemTemp mklink /D C:\Windows\Temp D:\Temp\SystemTemp move C:\Users\\AppData\Local\Temp D:\Temp\UserTemp mklink /D C:\Users\ \AppData\Local\Temp D:\Temp\UserTemp
此法透明度最高,程式仍以原路徑讀寫,實際存放在新位置,但需注意權限與移動時機 (建議安全模式或 WinRE 執行)。
修改 TEMP/TMP 環境變數是永久釋放系統碟暫存空間最直接的方法,關鍵在權限正確、避免可移動裝置、重新登入生效。配合定期清理新路徑暫存檔,系統碟空間將長期維持寬裕。