~/Library/Caches を空にしても壊れるものはほとんどありません。ただし空いた容量も長くは残りません。アプリは数日で必要なものを作り直します。だから意味のある問いは、中のどのフォルダーが大きくなり、そこに何が入っているかです。「キャッシュ」という言葉は、捨ててよいサムネイルと、アプリがコンテンツとして扱うファイルの両方を指します。
基本ルール:キャッシュフォルダーに手を付ける前にアプリを終了し、削除ではなくゴミ箱へ移動し、ゴミ箱は一日そのままにしておきます。
簡潔な回答
- まず
du -sh ~/Library/Caches/* | sort -h | tail -20で測る。 - キャッシュを消す予定のアプリを終了する。
Cachesフォルダー全体ではなく、個々のサブフォルダーをゴミ箱へ移す。/System/Library/Cachesには触らない。- アプリを使うほど容量が戻ることを見込んでおく。
- ひとつのサブフォルダーが巨大なら、削除の前にそのアプリの設定で上限を探す。
~/Library/Caches には何があるか
macOS はキャッシュのツリーを 3 つ別々に持っていて、あなたが管理できるのはそのうち 1 つだけです。
| パス | 所有者 | 触ってよいか |
|---|---|---|
~/Library/Caches | あなたのユーザーアカウント | よい。フォルダー単位で |
/Library/Caches | Mac のすべてのアカウント | 慎重に。管理者権限が必要 |
/System/Library/Caches | macOS 自身 | だめ。System Integrity Protection が守っている |
~/Library/Caches の中では、各フォルダーが作成したアプリのバンドル ID で名付けられています。com.apple.dt.Xcode、com.spotify.client、com.microsoft.VSCode などです。Homebrew や go-build のように素の名前を使うツールもあります。
Finder では Shift-Command-G で開けます。ターミナルなら次のとおりです。
du -sh ~/Library/Caches/* | sort -h | tail -20
出力はフォルダーをサイズ順に並べます。ほとんどは数 MB で、気にする必要はありません。
空にすると何が起きるか
思われているほどのことは起きません。
- アプリは必要なものを作り直すか、再ダウンロードする;
- 削除後の最初の起動は時間がかかる;
- ブラウザーはディスクではなくネットワークからページを取り直す;
- サムネイルを作り直すまで、プレビューが空になるアプリもある。
キャッシュ削除が触れないもの:
- パスワードなどキーチェーンの項目;
~/Library/Preferencesにある設定;~/Library/Application Supportと~/Library/Containersにある書類とアプリのデータ。
例外があるからこそ、消す前に見る価値があります。一部のアプリは Caches に本物のコンテンツを置きます。オフラインの音楽、ダウンロードした動画、地図データ、メールの添付です。フォルダー名はキャッシュでも、中身は残しておきたいダウンロードとして振る舞います。上位 3 つか 4 つを確認するのに 1 分もかかりません。
容量を持っているフォルダー
重いフォルダーは、よく使うアプリから生まれます。
- ブラウザー。 Chrome は
~/Library/Caches/Google/Chromeに書き込みます。Safari は自分のコンテナ~/Library/Containers/com.apple.Safariにキャッシュを置くため、上のリストには出てきません。 - ストリーミングとメディアのクライアント。 オフラインのコンテンツがキャッシュフォルダーに入ることが多く、まさにここで削除は再ダウンロードを意味します。
- 開発ツール。
com.apple.dt.Xcodeはビルドとインデックスのたびに大きくなります。Homebrew、go-build、Yarn、pipはそれぞれのフォルダーを持ちます。npm のキャッシュは~/.npmにあります。 - チャットや業務アプリ。 Slack、Discord、Electron 系のアプリは全般に多めにキャッシュし、文句なく作り直します。
なぜ容量が戻るのか
キャッシュは、済んだ作業をやり直さずに済ませるために存在します。消せばアプリはその代価を払い直し、ファイルを書き戻します。1 週間もすれば空けた容量の大半は消えています。
つまりキャッシュ掃除は一度きりの息継ぎで、解決ではありません。ディスクが繰り返し埋まるなら、原因は別のところにあります。スナップショット、開発の生成物、大きなメディア、重複ファイルです。macOS 自身も空き容量が減ると勝手にキャッシュを整理します。Finder の表示で「パージ可能」とされる分には、これが含まれます。
面倒を避ける手順
- フォルダーを測り、大きい上位 3 つを書き出す。
- その各アプリを開き、設定にキャッシュや保存容量の上限がないか探す。Spotify、Chrome、Xcode にはあります。
- アプリを終了する。
- そのキャッシュフォルダーをゴミ箱へ移す。ほかはそのままにする。
- ゴミ箱を空にする前に、Mac を一日使う。
- もう一度測って、実際に空いたままの容量を確認する。
みんなが飛ばすのは手順 5 です。費用はゼロで、取り返しのつかない削除を取り返せる削除に変えてくれます。
/Library/Caches はどう違うか
ルート直下の /Library/Caches は Mac のすべてのアカウントのもので、管理者権限が要ります。インストーラー、アップデーター、システム寄りのサービスが書き込みます。多くの Mac ではユーザー側より小さく、ルールは同じです。何が作ったか分かる名前のサブフォルダーだけを消し、残りは触らないことです。
/System/Library/Caches は別の話です。macOS が管理し、System Integrity Protection が変更を止めます。そこから容量を約束するクリーンアップツールがあれば、それは疑ってください。
まとめ
~/Library/Caches の中のフォルダーを消すことは、ほぼどのアプリにとっても安全で、習慣としては無意味です。ひとつのフォルダーが無視できない大きさになったときにやってください。アプリを終了し、フォルダーをゴミ箱へ移し、その前にアプリが何を置いていたかを見る。そして、繰り返し消えていく容量は別の場所で探しましょう。
よくある質問
Mac の ~/Library/Caches は削除しても安全ですか?
~/Library/Caches の中のフォルダーを空にしても壊れるものはほとんどありません。アプリは必要なものを作り直します。先にアプリを終了し、サブフォルダーは即削除ではなくゴミ箱へ移動し、大きいフォルダーは中身を見てから消してください。一部のアプリは使い捨てデータではなくダウンロードしたコンテンツをそこに置いています。
Library のキャッシュを削除するとログアウトしたりパスワードが消えたりしますか?
いいえ。パスワードはキーチェーン、設定は ~/Library/Preferences、アプリのデータは ~/Library/Application Support と ~/Library/Containers にあります。キャッシュフォルダーを空にしてもそれらには触れません。ごく一部のアプリはセッション情報をキャッシュに置いており、その場合は再ログインを求められます。
Library のキャッシュを消すとどれくらい空きますか?
使っているアプリによります。ブラウザー、ストリーミングのクライアント、開発ツールが最も大きなキャッシュフォルダーを作り、単独で数 GB に達することもあります。du -sh ~/Library/Caches/* | sort -h | tail -20 を実行すれば、掃除する価値があるかを判断する前に実際の数値を確認できます。
Mac のキャッシュは削除しても戻ってきますか?
戻ってきます。キャッシュはアプリが同じ処理を繰り返さないために存在するので、アプリを使うほどフォルダーは再び埋まります。だからキャッシュ削除は一時的な息継ぎであって、埋まり続けるディスクの解決策ではありません。
/System/Library/Caches は削除できますか?
触らないでください。このパスは System Integrity Protection に守られ、macOS が管理しており、中身はあなたのアプリのものではありません。管理できるのはユーザー領域の ~/Library/Caches です。
すべてのキャッシュを一度に削除しても安全ですか?
~/Library/Caches をまるごと空にしても多くの場合は動きますが、一度も中を見ていないフォルダーや、アプリがキャッシュとして置いたダウンロード済みコンテンツまで巻き込みます。大きいサブフォルダーだけを消せば、被害範囲を抑えたままほぼ同じ容量が戻ります。