為什麼我的 Mac 儲存空間會自己越來越滿?
你沒有下載什麼大檔案,可用空間卻一直減少:這週少幾 GB,下週又少幾 GB。
簡單說:很少是單一個大檔案,而是幾樣不會先問你就自己變大的東西:本機 Time Machine 快照、App 快取、交換空間、聊天 App 的媒體、iPhone 備份、「照片」和 iCloud 的下載,以及開發者工具。「系統設定」›「一般」›「儲存空間」顯示的是今天的總量,看不出變了什麼,所以要量兩次再比較。
Mac 上有哪些東西會自己變大?
- 本機快照:備份磁碟不在身邊時,Time Machine 會把快照留在 Mac 上。用
tmutil listlocalsnapshots /列出來。 - 交換空間:RAM 不夠用時寫到磁碟上的記憶體內容。
sysctl vm.swapusage會顯示用了多少。 ~/Library/Caches裡的快取:App 會讓它一直變大,直到 macOS 需要空間為止。- 聊天 App:WhatsApp、Telegram 和「訊息」會保留別人傳給你的每一張照片和每一段影片。
- iPhone 和 iPad 備份,以及 Finder 下載的軟體更新。
- 「照片」和「iCloud 雲碟」下載原始檔,以及「郵件」下載附件。
- 開發者工具:Xcode 的建置和模擬器、Docker、套件快取、AI 模型。
怎麼找出是什麼在變大?
把你個人專屬資料夾和「資源庫」裡每個資料夾的大小存成一個檔案,檔名加上今天的日期:
du -sk ~/* ~/Library/* ~/Library/Containers/* ~/Library/Group\ Containers/* 2>/dev/null > ~/du-$(date +%F).txt
過幾天或一週後,再執行同一個指令。然後比較這兩個檔案(換成它們的日期),列出每個變大超過 100 MB 的資料夾,最大的排在最前面(變大的資料夾會連同包含它的上層資料夾一起出現,例如 ~/Library):
awk -F'\t' 'NR==FNR{a[$2]=$1;next} $1-a[$2]>100000 {printf "%d MB\t%s\n", ($1-a[$2])*1024/1e6, $2}' ~/du-2026-11-01.txt ~/du-2026-11-08.txt | sort -rn
請先給「終端機」「完全取用磁碟」的權限(「系統設定」›「隱私權與安全性」›「完全取用磁碟」),否則有些資料夾會被算成空的。
為什麼可用空間會自己忽高忽低?
已使用的空間中有一部分是可清除的:快照、iCloud 的離線副本,以及 macOS 需要空間時會移除的快取。所以可用空間可能連續好幾天下降,然後在重新開機或下載大檔案之後又跳回來,你什麼都不用做。
怎麼讓它不要再被填滿?
- 偶爾接上 Time Machine 磁碟,讓本機快照被清理掉。
- 在聊天 App 中關閉影片自動下載,或設定媒體要保留多久。
- 為「iCloud 雲碟」和「照片」開啟「最佳化 Mac 儲存空間」,讓較舊的檔案留在 iCloud。
- 偶爾重新開機:交換空間和許多暫存檔都會被清掉。
- 如果某個資料夾一週又一週地持續變大,就找出是哪個 App 在寫入它。