# Mac 上的可清除空間是什麼？

> Finder、df 與儲存空間設定對同一個卷宗其實在回答三個不同問題，而可清除空間真正涵蓋什麼、為什麼不能隨叫隨到地清掉，以及 sudo purge 為什麼完全是另一回事。

Published: 2026-08-10 | Updated: 2026-08-16

Finder 顯示磁碟有 321 GB 可用。「儲存空間」設定則出現一大條標成可清除的灰色區塊。`df` 又報出另一個數字，單位也不一樣。三者都沒有說謊，只是各自回答的問題並不完全相同。

幾乎所有「我的 Mac 說空間滿了，但我找不到那些檔案」的問題，先是測量問題，然後才是儲存空間問題。搞清楚每個數字在回答什麼，多半就能解開。

**簡短回答：** 可清除空間是 macOS 認為需要時可以收回的空間，主要來自本機快照、可逐出的雲端檔案，以及快取。Finder 會把它算進可用空間，其他工具則不一定。你沒辦法用一條指令直接清掉它，通常也不需要：macOS 會在需要時自行釋放。

## 三個數字，三個問題

在任何一台 Mac 上跑下面這兩條，同一個宗卷都會得到三個不同的數字。

```
df -h /
diskutil info / | grep -i "Container"
```

寫這篇文章時用的那台機器上：

```
/dev/disk3s1s1   926Gi    12Gi   299Gi     4%     /

   Container Total Space:     994.6 GB (994610155520 Bytes)
   Container Free Space:      321.0 GB (321045377024 Bytes)
```

`df` 說可用 299Gi。`diskutil` 說剩餘 321.0 GB。這其實是同一個量：321 十進位 GB 等於 299 二進位 GiB。Apple 用十進位 GB 回報儲存空間，而 `df -h` 印的是二進位單位並標成 `Gi`。在斷定空間消失之前，先確認自己是不是拿 GB 跟 GiB 在比。

`Used` 欄讀到 12Gi 是另一個意外。在現代 macOS 上，`/` 是密封、唯讀的系統快照。你的檔案在資料宗卷上，兩者共用同一個 APFS 容器。所以各宗卷的「已使用」加起來不會等於整個容器。

| 你在問的問題 | 能回答它的工具 |
|---|---|
| 我現在還能寫入多少 | `diskutil info /` 的容器剩餘空間 |
| 檔案系統對這個宗卷回報什麼 | `df -h /` |
| macOS 願意向 App 承諾多少 | Finder 的「可用」 |
| 空間依類別去了哪裡 | 系統設定 > 一般 > 儲存空間 |

## 可清除空間實際涵蓋什麼

可清除空間是 macOS 對壓力下可釋放空間的即時估計，來自幾個互不相干的來源：

- **本機 Time Machine 快照。** 通常佔最大宗，也是刪了檔案卻好像沒騰出空間的原因。見 [本機快照](https://mole.fit/tw/blog/how-to-delete-local-time-machine-snapshots-mac)。
- **可逐出的 iCloud 雲碟與「照片」內容**，在開啟「最佳化 Mac 儲存空間」時。本機只留佔位檔，完整複本可以重新下載。
- **macOS 認為可重新產生的快取**，系統可能不詢問就丟掉。
- **APFS 容器內部尚未全面反映的帳務餘裕。**

每一項規則都不同，所以「清出 47 GB 可清除空間」是一個事前沒人能核對的數字。它是上限，把這個數字當成可交付成果報出來的工具，是在猜。

## 你無法隨需清除，這是刻意設計

沒有受支援的指令能說「現在就釋放可清除空間」。macOS 在有配置需要這些區塊時才收回，這才是有用的行為：快照或已下載的雲端檔案值得一直留著，直到空間真正被需要。

所以一台回報可用空間很少的 Mac，仍可能存得下大檔或裝得了更新，因為請求本身就會觸發回收。想早點拿回空間，就去拿掉佔住它的東西，而不是去找清除開關。精簡快照是唯一能穩定推動這個數字的槓桿：

```
tmutil listlocalsnapshots /
tmutil thinlocalsnapshots /
```

## `sudo purge` 完全是另一回事

搜尋結果一直把兩者混在一起，所以先說清楚：`purge` 是一條真正的 macOS 指令，跟磁碟的可清除空間毫無關係。它沖掉的是**記憶體**裡的檔案系統快取，把已快取的磁碟頁面從 RAM 趕出去。Apple 做它是為了基準測試，讓第二次跑測試時不會讀到熱快取。

```
sudo purge
```

它不釋放任何磁碟空間，也不刪任何檔案。它丟掉的是系統剛花時間建好的快取，接下來幾分鐘工作會變慢，因為一切都得重新從磁碟讀。健康的 Mac 沒理由跑它，排程定期跑只會賠上效能。

如果你真正想問的是記憶體而不是磁碟，去讀 [記憶體壓力](https://mole.fit/tw/blog/mac-memory-pressure-explained)：那裡真正要看的是壓力，不是剩餘 RAM 有多少。

## 為什麼「儲存空間」設定要過一陣子才對得上

刪掉大東西之後，「儲存空間」面板常常還顯示舊數字。那個畫面裡的分類是背景行程對宗卷抽樣算出來的，不是每次變動都重算，而且好幾個分類會重疊。

這讓面板很適合作地圖，卻不適合作儀器。用它看宗卷的形貌，要用 `df` 或 `diskutil` 在變更前後對一下，才知道變更有沒有生效。

## 一段簡短診斷

可用空間跟預期對不上時，照這個順序，幾分鐘就能釐清。

1. 記下 `diskutil info /` 的容器剩餘空間。這是誠實的基準線。
2. 跑 `tmutil listlocalsnapshots /`。這裡的項目能解釋大多數「刪了卻沒騰出空間」的回報。
3. 檢查「照片」和 iCloud 雲碟是否開啟了「最佳化 Mac 儲存空間」。若開啟，你一部分「已使用」空間其實可逐出，一部分「可用」空間則是理論值。
4. 然後才去找大檔。若前三步已經解釋了落差，你就不是檔案問題。

## 檢查工具適合放在哪

[Mole](https://mole.fit/) 只回報它能證明的事：列出項目的真實磁碟佔用、它移除的任何東西的前後總量，不會對它盤點不了的可清除池許下標題承諾。當空間是被快照釘住而不是被檔案佔住時，有用的回答是把這件事說清楚，而不是秀一個更大的數字。

## 常見問題

### 該把可清除空間清到零嗎？

不需要。可清除空間多半是對你有利的工作狀態：你可能用得到的快照、能立刻開啟的雲端檔案、讓 App 保持快速的快取。把它壓到零，是拿這一切去換一個數字。

### 為什麼 Finder 顯示的可用空間比 `df` 多？

Finder 把 macOS 有把握能收回的空間算進去。`df` 回報的是檔案系統目前尚未配置的空間。兩者都對，只是問題不同。

### 外接磁碟會有可清除空間嗎？

本機快照是啟動磁碟行為，所以最大宗的來源通常不存在。外接 APFS 宗卷仍可能帶有快照，如果有東西把它們寫進去。

### 可清除空間代表有問題嗎？

只有在它非常大、還持續成長，同時可用空間一直縮小的時候。這種模式通常表示快照累積得比被精簡得快，快照指南裡有講。

---

Canonical HTML page: https://mole.fit/tw/blog/what-is-purgeable-space-on-mac
Blog index for agents: https://mole.fit/tw/blog/llms.txt
Site index for agents: https://mole.fit/llms.txt
