如何釋放 Mac 磁碟空間:開發者實戰手冊
2026年10月13日更新
要釋放 Mac 的磁碟空間,先用 df -h 和 du 量出哪些東西最大,再清除可重新產生的資料:開發者快取、舊的下載檔、本機 AI 模型、不再需要的 iOS 備份,以及 Time Machine 本機快照。最後記得清空垃圾桶,因為移到垃圾桶的檔案在清空之前仍然佔用空間。
這份手冊是寫給開發者的:塞滿磁碟的通常是建置產物和套件快取,而不是照片。每個步驟都只用內建工具。如果你偏好視覺化的總覽,WTMemory 可以從選單列免費顯示支援的快取與模型位置。
怎麼查看還剩多少磁碟空間?
打開「系統設定」>「一般」>「儲存空間」可以看到 Apple 的摘要。不過它計算很慢,而且會把很多東西都歸進「系統資料」,所以終端機比較實用:
df -h /System/Volumes/Data # size, used and available on your data volume
diskutil info / | grep -i "free\|available"
在 APFS 上所有卷宗共用同一個容器,所以要看的是「Avail」這個數字。請至少保留 10% 到 15% 的空間:macOS 需要空間給 swap、更新和快照,磁碟快滿時一切都會變慢。
個人資料夾裡是什麼在佔空間?
先從大範圍看起,再往最大的地方深入:
du -sh ~/* ~/.[!.]* 2>/dev/null | sort -h | tail -20
du -sh ~/Library/* 2>/dev/null | sort -h | tail -15
du -sh ~/Library/Caches/* 2>/dev/null | sort -h | tail -15
sort -h 會依人類可讀的大小排序,tail 則把最大的留在最下面。除非終端機有「完整磁碟取用權限」(「系統設定」>「隱私權與安全性」),否則有些資料夾會回報「Operation not permitted」;2>/dev/null 會把這些錯誤藏起來,所以總數可能略為偏低。
哪些開發者快取可以安全刪除?
這些快取會在需要時重新建置或重新下載。清掉它們只會讓下一次建置或安裝多花點時間,不會損失資料。請先結束相關工具。
| 工具 | 位置或指令 | 教學 |
|---|---|---|
| Xcode 建置產物 | ~/Library/Developer/Xcode/DerivedData | Xcode DerivedData |
| 舊的 iOS 裝置符號檔 | ~/Library/Developer/Xcode/iOS DeviceSupport | Xcode 教學 |
| 模擬器 | xcrun simctl delete unavailable | Xcode 教學 |
| npm | npm cache clean --force(快取位於 ~/.npm) | npm、Yarn、pnpm |
| pnpm | pnpm store prune | npm、Yarn、pnpm |
| Yarn | yarn cache clean | npm、Yarn、pnpm |
| Bun | ~/.bun/install/cache | 套件快取 |
| Cargo | ~/.cargo/registry,以及專案中的 target 資料夾 | |
| Gradle | ~/.gradle/caches | |
| Homebrew | brew cleanup --prune=all | |
| Docker | docker system df,再執行 docker system prune | Docker 磁碟空間 |
也檢查一下目前沒在開發的 repo 裡的 node_modules、target、.next、dist 和 build 資料夾:
find ~/Projects -name node_modules -type d -prune -exec du -sh {} + 2>/dev/null | sort -h | tail
不要手動刪除 Docker 的 Docker.raw 檔案。它裝著所有映像檔、容器和卷宗,包括資料庫資料。請使用 Docker 自己的指令,詳見 Docker 教學。
本機 AI 模型佔用多少空間?
在開發者的 Mac 上,它們往往比其他任何東西都大。一個 4-bit 的 70B 模型就約 40 GB。檢查常見的位置:
du -sh ~/.ollama/models ~/.cache/huggingface/hub ~/.lmstudio/models 2>/dev/null
請用 ollama rm <name> 移除 Ollama 模型,而不是去刪 blob。絕對不要把整個 ~/.cache/huggingface 刪掉,因為裡面可能有你的存取權杖。AI 模型教學逐一介紹每個工具,也包括如何把模型搬到外接硬碟。
「下載項目」、iOS 備份和大檔案呢?
下載項目
安裝檔、磁碟映像檔和 zip 檔都會在這裡越堆越多。在 Finder 中依大小排序(「顯示方式」>「顯示顯示方式選項」),或執行 du -sh ~/Downloads/* | sort -h | tail -20。App 裝好之後,舊的 .dmg 和 .zip 檔通常可以放心刪除。
iPhone 與 iPad 備份
本機裝置備份放在 ~/Library/Application Support/MobileSync/Backup,每份都可能有幾十 GB。不要直接刪除這些資料夾:你看不出它們屬於哪台裝置、哪個日期,可能會刪掉手機資料唯一的一份副本。請改為打開 Finder,在側邊欄選取你的裝置,按一下「管理備份」,在那裡刪除舊備份。動手前先確認你有一份最近的備份(本機或 iCloud)。
任何地方的大檔案
find ~ -type f -size +1G 2>/dev/null
這會列出個人資料夾中所有超過 1 GB 的檔案:虛擬機映像檔、匯出的影片、舊的壓縮檔和資料集通常都會現形。
怎麼移除 Time Machine 本機快照?
開啟 Time Machine 時,macOS 會在內建磁碟上每小時保留本機快照。空間不足時它們通常會自動清除,但它們可能讓你刪了一大堆東西卻好像什麼都沒釋放。列出快照:
tmutil listlocalsnapshots /
請 macOS 精簡快照,這裡的目標是以最高緊急程度(4)回收約 20 GB:
sudo tmutil thinlocalsnapshots / 20000000000 4
你也可以用清單中的日期刪除特定日期的快照:sudo tmutil deletelocalsnapshots 2026-10-12-093015。刪除快照會移除那些還原點,但已經複製到 Time Machine 備份磁碟的備份不受影響。
為什麼刪了檔案卻沒有釋放空間?
- 垃圾桶還沒清空。垃圾桶裡的檔案仍然算數。從 Dock 清空它,或用
du -sh ~/.Trash檢查。 - 本機快照仍參照這些檔案。按照上面的方法精簡快照。
- 有 App 還開著這個檔案。處理程序關閉檔案後空間才會釋放。結束該 App,或用
lsof +L1檢查。 - 可清除空間。macOS 可能先把空間顯示為「可清除」,之後才真正回收。
為了釋放空間,哪些東西絕對不能刪?
- 整個
~/Library。裡面有 App 設定、鑰匙圈、郵件、訊息和資料庫。只刪特定的快取資料夾。 /System、/usr、/bin、/private/var。系統卷宗是密封且唯讀的,其餘部分則由 macOS 自己使用。不要在這裡用sudo rm。- Swap 和睡眠映像檔,位於
/System/Volumes/VM。它們由 macOS 管理;重新開機就能讓 swap 縮小。詳見 Mac 上的「系統資料」。 ~/.ssh、~/.config、~/.claude等點開頭的資料夾,裡面有金鑰、權杖和設定。- Docker 的虛擬機磁碟檔,除非你已經準備好失去所有映像檔、容器和卷宗。
有沒有 App 能做到這些又不冒風險?
WTMemory 是支援 macOS 12 以上版本的原生選單列 App。檢視功能免費:Storage(儲存空間)檢視會掃描支援的位置(Xcode DerivedData、iOS DeviceSupport 和模擬器快取,npm、pnpm、Yarn、Bun、Cargo 和 Gradle 快取,以及 Ollama、Hugging Face Hub、LM Studio、ComfyUI 和部分 Claude Code 快取),Disk Explorer(磁碟瀏覽器)則會顯示資料夾的空間分布,以及其中最多 50 個最大的檔案。Pro(一次付清 $9,最多三台 Mac,提供 7 天試用)可以讓你選取項目、閱讀刪除後的影響,並在檢視後移到垃圾桶。不會自動選取或刪除任何東西,Docker 虛擬機資料和原始碼都會排除在外,要不要清空垃圾桶仍由你決定。
常見問題
釋放 Mac 磁碟空間最快的方法是什麼?
先清空垃圾桶,再清除可重新產生的開發者快取(例如 Xcode DerivedData 和套件管理工具快取),並移除不再使用的本機 AI 模型。在開發者的 Mac 上,這些通常是最大又最安全的收穫。
刪除 ~/Library/Caches 安全嗎?
~/Library/Caches 裡的個別資料夾一般可以安全刪除,因為 App 會重新建立它們,但請先結束該 App。不要刪除 ~/Library 本身,裡面存有設定和 App 資料。
怎麼在終端機找出 Mac 上的大檔案?
執行 du -sh ~/* 2>/dev/null | sort -h 查看資料夾大小,或執行 find ~ -type f -size +1G 列出個人資料夾中所有超過 1 GB 的檔案。
為什麼刪了檔案,Mac 還是顯示沒有空間?
檔案可能還在垃圾桶裡、被 Time Machine 本機快照參照,或被執行中的 App 開著。請清空垃圾桶、用 tmutil 精簡快照,並結束該 App。
可以刪除 Mac 上舊的 iPhone 備份嗎?
可以,但請使用 Finder 的「管理備份」視窗,而不是直接刪除 ~/Library/Application Support/MobileSync/Backup 裡的資料夾,並至少保留一份最近的備份。