📘

Mac のストレージが圧迫されたらやることリスト

に公開

会社支給 Mac のストレージが枯渇し、動かなくなることが多くなったので、不要なファイルを削除することにしました。

本記事ではその流れについて、以下のステップで紹介します。

  1. 利用状況を把握する
  2. キャッシュや生成物を安全に消す

ステップ 1: 使用量を正確に可視化する

「システム設定 > 一般 > ストレージ設定」でも大枠は見えますが、ターミナルから du で詳細を見る方が細かく見れます。

# ホームディレクトリ直下の大きいディレクトリを確認
du -sh ~/* | sort -h

# ライブラリ内で巨大化したキャッシュを追跡
du -sh ~/Library/* | sort -h | tail -n 20

Operation not permitted や Permission denied が表示される場合は、「フルディスクアクセス」権限を付与すると良いらしいのですが、私の環境では権限を付与しても見れませんでした。。

ステップ 2: キャッシュと生成物を掃除する

Homebrew と言語ランタイム

ストレージ削除が主目的の場合は、以下のコマンドで既存の古いバージョンやキャッシュを削除します。

brew cleanup           # 旧バージョンのボトルを削除(120日以上経過したダウンロードなど)
# brew cleanup -s      # より積極的に削除:最新版のダウンロードキャッシュも削除(次回インストール時に再ダウンロードが必要)
brew autoremove       # 使われていない依存関係を削除
npm cache clean --force  # npm のキャッシュを削除(npm 5以降では --force が必須)
pip cache purge          # pip のキャッシュを削除

パッケージを最新版にアップグレードしてから古いバージョンを削除したい場合は、事前に以下を実行してください。

brew update            # Homebrew の formulae と casks の情報を更新
brew upgrade --greedy  # すべてのパッケージをアップグレード(auto_updates true や version :latest の cask も含む)

各種アプリケーションキャッシュ

~/Library/Application Support や ~/Library/Caches で特に大きいもの(例: Chrome プロファイル、Slack のキャッシュ等)を削除します。rm -rf する前にアプリを終了しておくと良いです。

ステップ 3: 利用頻度が高くないファイルを退避させる

ローカルに置いておく方が利用しやすいというのはよく分かりますが、そうしておくとストレージを圧迫してしまうので、よく使うものでなければ別の場所に移動させます。

特にリポジトリは手元に置いておきたい派ですが、何GB になることもあったり、書きかけのものがローカルに残ったままとなって綺麗な状態ではないことが多いで、あまり使わないときは消しておくのが良いと思います。目安としては1週間に1度使わないのであれば消しておくと良さそうです。

  • Sharepoint などのクラウドストレージに移動
  • GitHub で管理している場合は、頻繁に使わないものはローカルファイルを消しておく
  • USB メモリなどの物理デバイスに移動(業務的に物理デバイスを使えないところは多いかもしれないです)

まとめ

uv のキャッシュが 50GB 程度あってそれを削除してみましたが、思ったより減っていませんでした。ある程度減ったので良しとします。

参考文献

GitHubで編集を提案

Discussion