Mac の purge を整理する:コマンド、パージ可能な領域、Purge アプリ
Mac で「purge」という言葉は、まったく無関係な三つのものを指し、検索結果はそれらを一緒くたにしてしまいます。一つは Finder に出るストレージの数字、一つはメモリを操作するターミナルコマンド、そしてもう一つはディスク容量を空けると謳うアプリ群です。間違ったものを削除したり、間違った結果を期待したりする原因は、たいていこの三つを混同することにあります。
このページでは一画面で整理し、それぞれの詳しい記事に案内します。本文の「Mole」は mole.fit の Mole for Mac と、その付属の mo コマンドラインツールだけを指します。
まず区別する:三つの異なる purge
検索した言葉を、下の該当する行に当てはめてください。三つのうち、必要なときに確実にディスク容量を空けられるのは一つだけで、それは多くの人が思うものとは違います。
| 入力した言葉 | 実際は何か | ディスクを任意に空けられるか |
|---|---|---|
| purgeable space、purge storage | macOS が必要なときに回収できるファイルを表す APFS の集計区分 | ほとんどは不可で、macOS が判断する。ローカルの Time Machine スナップショットは任意に削除できるが、直近の復元ポイントを失う |
| purge、sudo purge | ディスク由来のメモリキャッシュを解放するターミナルコマンド | 不可。対象はメモリで、ディスクではない |
| Purge app、purge app mac、mo purge | クリーナーアプリと、プロジェクトのビルド出力と依存関係フォルダを削除する Mole CLI コマンド | 可。ただし再生成または再ダウンロードできるファイルのみ |
判断は一言で。Finder やストレージ設定で見たならパージ可能領域の節、ターミナルの手順で読んだならコマンドの節、ツールを比べているならアプリの節を読んでください。
「Purge」というアプリを探していたなら
「purge app mac」の検索結果は、ディスククリーナー、メモリツール、コマンドラインツールが混在します。三つとも同じ言葉を借りているからです。だから一つのリストにまったく別の仕事をする製品が並びます。
クリーナーが信頼できるのは、削除してからではなく削除する前に候補一覧を見せるときです。何も考えず「すべて削除」するボタンはその逆で、唯一大事な判断を隠してしまいます。Mole はレビューそのものを製品と考えています。Clean と Analyze は各候補をパスとサイズ付きで一覧表示し、スキャンはライセンスなしで無料、何を削除するかはあなたが決めます。より大きな数字を競うことはありません。
purge コマンド(メモリ)とできないこと
sudo purge は実在する macOS コマンドで、カーネルにディスク由来のメモリキャッシュの解放を要求します。管理者権限が必要で、対象はメモリであり起動ディスクではありません。Finder のパージ可能領域を空にすることはなく、ファイルを削除することもありません。
健全な Mac では、これはほとんど役に立ちません。macOS はそのメモリをすでに管理しており、「回収」したように見える空きメモリは、Mac を速く保つのと同じファイルキャッシュによって数秒で再び埋まります。sudo purge の直後は、メモリから捨てたファイルをディスクから読み直すため、しばらく Mac がかえって遅く感じることがあります。メモリの状態を判断するなら、空きメモリの量ではなく、アクティビティモニタの「メモリプレッシャー」を見てください。本当の疑問がメモリクリーナーの要否なら、その誤解には専用の記事があります。
ストレージ設定のパージ可能な領域
パージ可能領域とは、macOS が「使用可能」に数えるディスクのことで、必要になれば取り除けるファイル、つまりローカルの Time Machine スナップショット、キャッシュされたダウンロード、ストレージ最適化のコピーを保持しています。これはフォルダではなく数字で、その大半には空にするための公式のボタンがなく、書き込みに容量が必要になったときに macOS が回収します。
ローカルの Time Machine スナップショットは例外です。tmutil deletelocalsnapshots / で削除でき、ローカルスナップショットがあるときは、Mole の Clean の「システムデータ」に「Time Machineローカルスナップショット」の行が表示されることがあり、既定で選択されています。どちらの方法でも直近の復元ポイントを失います。それに見合うのがどんなときかは Mac のローカル Time Machine スナップショットを削除するで説明しています。
詳しい集計、Finder と df とストレージ設定が同じボリュームについて食い違う理由、そしてその数字に何が集まるのかは、Mac のパージ可能な領域とはにあります。この記事では、他の二つの purge と切り離すだけにとどめます。
mo purge:プロジェクトのビルド成果物を掃除する(Mole CLI)
mo purge は無料の Mole CLI のコマンドです。プロジェクトディレクトリを走査し、ビルド出力とダウンロードした依存関係を見つけて削除を提案します。成果物の種類には node_modules、target、.build、build、dist、venv、vendor、Pods などがあり、既定の走査パスには ~/Projects、~/GitHub、~/dev が含まれます。過去 7 日以内にファイルの更新があった成果物や、更新を Mole が確認できない成果物は選択されず、デプロイ用の鍵ファイル、入れ子の Git リポジトリ、Git 管理下のファイルを含むディレクトリは保護されます。
毎回、まずプレビューします。dry-run モードで実行して一覧を読み、それから本番を実行します。
mo purge --dry-run
mo purge
mo purge --dry-run は何も削除せずに削除対象を表示し、mo purge --paths は走査するディレクトリを設定します。mo purge が削除したものはゴミ箱に入らず完全に消えるため、dry-run が重要です。取り戻すには再ビルドか依存関係の再インストールが必要で、ネットワークを要する場合があります。
Mole for Mac の Clean には、範囲を絞った同種の掃除があります。ローカルのビルドで作り直せるプロジェクトのビルド出力、たとえば target、.next、.build、dist、build、DerivedData、coverage を、100 MB 以上のフォルダに限って一覧表示します。これらの行は表示されても選択されておらず、選択したものはゴミ箱に移されます。node_modules、Pods、venv、vendor のような依存関係フォルダは、ネットワークからしか取り戻せず、再ダウンロードした版が元と一致するとも限らないため、アプリはあえて対象から外しています。
これはクリーナーのキャッシュ一掃とも、IDE 自身の「invalidate caches」とも別の仕事です。ターミナルとアプリのどちらにするか迷うなら、Mole CLI か Mole for Mac かの比較にそれぞれの役割があります。
安全な手順
- 上の表で、自分が実際にどの purge を指しているかを確定する。
- 手を動かす前に測る。ストレージ設定、アクティビティモニタの「メモリ」タブ、またはフォルダなら
duで実数を読む。 - 一つの合計ではなく、個々のファイルをレビューする。
- 正しいツールで実行し、空き容量が変わったことを確認する。
「purge」という言葉とは無関係な一般的なディスク整理なら、Mac の空き容量を増やす方法が手順どおりのチェックリストで、Mole は安全かには Mole が何を削除し、何に触れないかが記載されています。
関連記事
- Mac のパージ可能な領域とは:ストレージ数字の裏にある APFS の集計。
- Mole CLI か Mole for Mac か:
mo purgeの位置づけと、アプリだけができること。 - Mac にメモリクリーナーは必要か:メモリの解放がめったに役立たない理由。
よくある質問
purge とパージ可能な領域は同じですか?
いいえ。パージ可能な領域は macOS が後で回収できるファイルを表す APFS のストレージ数字で、sudo purge はメモリコマンドです。共通するのは語幹だけです。sudo purge はディスクを一切空けず、パージ可能な領域の大半は macOS が必要としたときにしか解放されません。任意に削除できるのはローカルの Time Machine スナップショットだけです。
purge は写真やチャット履歴を削除しますか?
sudo purge は何も削除せず、メモリキャッシュを解放するだけです。パージ可能な領域が保持するのは macOS が手放せるデータ、たとえばローカルスナップショットやストレージ最適化のコピーであって、ファイルの原本ではありません。ただしスナップショットは復元ポイントです。macOS は新しいものを作りますが、削除した時点のものは取り戻せません。mo purge はプロジェクトフォルダ内のビルド出力と、node_modules、vendor、Pods、venv などの依存関係フォルダを削除します。依存関係フォルダの復元にはネットワークからのダウンロードが必要で、dry-run が先に一覧を表示します。
Mole のスキャンにライセンスは必要ですか?
いいえ。Mac アプリではスキャンと結果の確認が無料で、ライセンスも時間制限もありません。実行するときだけライセンスが必要で、各有料ツールは尋ねる前に 2 回動きます。Mole for Mac は買い切り 19 ドルで、2 台の Mac に対応し、無料アップデートと 14 日間の返金が付きます。
Mole CLI は無料ですか?
はい。mo コマンドラインツールは GPL-3.0 で無料かつオープンソースで、brew install mole で導入できます。有料アプリは別個のネイティブ実装で、CLI を必要としません。