はじめに
少し前(秋口くらい)からMacのストレージがたびたび逼迫しており、その都度不要なファイルを探し回っては削除する日々が続いていました。
しかし、先日ついにもう削除できるファイルがなくなってしまい、重い腰を上げてなんとかする方法を探す他ない状況に陥ってしまいました。。。
調査
まずストレージが何で圧迫されているのか把握する必要があります。
調査にあたってはこちらの記事を参考にさせていただきました。
https://qiita.com/hann-solo/items/879573a65d8aa201ae14
-
ターミナルにフルディスクアクセスを許可
-
容量が大きいディレクトリを抽出
sudo du --si -xct 1000000000 /System/Volumes/Data 2>~/Desktop/DuErrors.txt | sort -nr > ~/Desktop/SortedDiskSpace.txtDuErrors.txtの部分はなぜか権限不足で止まってしまうことがあったので、出力しています。
コマンド・オプションについて
- du: ディスク使用量を表示(directory usage)
- --si: 容量の単位を 1000 進(KB=1000B, MB=1000KB…)で表示
- -x: 同一ファイルシステム内だけを集計
- -c: 出力の最後に 合計(total) の行を追加
- -t 1000000000: しきい値(threshold)で、指定サイズ以上の項目だけを表示(今回のケースでは 1,000,000,000 bytes(約 1GB))
- 2>: 標準エラー出力(stderr)をリダイレクト
- /dev/null: 捨てる先(何も表示しない)
- -n: 出力を 数値として扱う
- -r: 降順(reverse)に並べ替え
:
-
SortedDiskSpace.txt を確認
以下参考
464G total 464G /System/Volumes/Data 324G /System/Volumes/Data/Users 323G ~ 182G ~/Library 60G ~/Library/Caches 47G ~/Library/Containers 45G ~/Library/Containers/com.docker.docker 35G /System/Volumes/Data/Library/Developer 33G /System/Volumes/Data/Library/Developer/CoreSimulator 33G ~/Library/Caches/Yarn 29G ~/Library/Application Support 27G ~/.gradle 26G ~/.cache/uv 22G /System/Volumes/Data/Applications 10G ~/Library/Android/sdk 9.2G /System/Volumes/Data/opt/homebrew注: プライバシーやセキュリティリスクの観点から抜粋で載せています。
不要なキャッシュを削除
Docker
-
Docker Desktopを起動
-
以下コマンドを実行
docker system df結果
TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 14 0 4.12GB 4.12GB (100%) Containers 0 0 0B 0B Local Volumes 10 0 1.241GB 1.241GB (100%) Build Cache 232 0 21.21GB 21.21GB -
以下コマンドのいずれか
-
ビルドキャッシュのみ削除(今回は21.21GB)
docker builder prune --all --force -
イメージも削除(今回は4.12GB)
今回は、Containersが0なので、安全に削除可能
docker image prune -a --force -
全て削除(ビルドキャッシュ+イメージ+ボリューム)
理解していないと危険なので慎重に行う
docker system prune -a --volumes --force
-
XCode / iOS Simulator
不要なSimを削除(合計で数十GB程度)
xcrun simctl delete unavailable
さらに削りたい場合は、Xcodeの Settings > Platforms から不要なSimulator Runtimeを消すのが確実(/Library/Developer/CoreSimulator が減る)。
Gradle
今回は27GB削除
強力なコマンドなので慎重に
次回ビルド・インストールは遅くなる
rm -rf ~/.gradle/caches
uv
今回は26GB削除
uv cache prune --force
npm
今回は12GB削除
npm cache clean --force
yarn
今回は33GB削除
強力なコマンドなので慎重に
次回ビルド・インストールは遅くなる
rm -rf ~/Library/Caches/Yarn
pnpm
今回は5.6GB削除
pnpm store prune
Go
今回は1.5GB削除
go clean -cache -modcache
Homebrew
ダウンロードキャッシュ(今回は2.3GB)
強力なコマンドなので慎重に
次回インストールは遅くなる
brew cleanup -s && rm -rf ~/Library/Caches/Homebrew/downloads
未使用アプリケーションの削除
- 以下コマンドを実行して一覧を取得
du -sh ~/Library/Application\ Support/* 2>/dev/null | sort -hr | head -n 30 du -sh ~/Library/Containers/* 2>/dev/null | sort -hr | head -n 30 du -sh ~/Library/Caches/* 2>/dev/null | sort -hr | head -n 30コマンド・オプションについて
- -s: summarize(各ディレクトリの中身を再帰的に出さずに、各引数ごとに合計1行だけ出す)
- -h: human-readable(K/M/G など人間が読みやすい単位で表示)
- head: 先頭からN行だけ表示
- -n 30: 30行だけ表示(= 上位30件)
:
- 一覧から使用していないものを削除する
結果
元のスクリーンショットを撮り忘れていたのですが、書類が150GB超、システムデータが240GB超あり、合計で490GB以上のストレージを使用していました。(警告が出ていました、、、)
そこから150GBほど開けることに成功し、スッキリ快適になりました。
まさに年末の大掃除といった感じでした。

おわりに
とりあえず備忘録的にここに書かせていただきました。
使っている技術などによっても対応は変わってくるでしょうし、今回は私の怠慢でここまで溜め込んでいましたので、あまり他の方の役に立つかは分かりませんが、もし参考になることがあれば幸いです。