Mac
 Computer >> コンピューター >  >> システム >> Mac

開発者向けMacのストレージ大掃除!空き容量を劇的に増やす手動クリーニング術

開発環境をクリーンアップしよう!

市販のクリーニングソフトは、重複ファイルの削除や古いOSのゴミ掃除など、一般的なメンテナンスには非常に便利です。しかし、開発マシンの掃除となると話は別。自動クリーナーは開発者マシンの細部まで面倒を見てくれません。

日頃のメンテナンスならCleanMyMacのようなツールで十分ですが、開発者は年に一度、手動でいくつかのコマンドを実行してマシンを整理するのがおすすめです。

まずは、開始時点の「空き容量」を確認しておきましょう。

開発者向けMacのストレージ大掃除!空き容量を劇的に増やす手動クリーニング術

筆者の環境では、クリーニング前の空き容量は132.2GBでした。それでは始めましょう!

Homebrewユーザー向け

ここは数百MB単位で削減できることが多いポイントです。アップデートを行い、不要なファイルを一掃しましょう。

更新して、古いフォーミュラとそのフォルダを削除:

brew update && brew upgrade && brew cleanup

以前はbrew pruneを使っていた方もいるかもしれませんが、このコマンドは非推奨になりました。現在はcleanupがその役割も引き受けてくれます。

Homebrewの一般的なメンテナンス

Brewは複雑なシステムであり、それを最もよく知るのはメンテナー自身です。brew doctorを実行すれば、正常に動作させるために追加で対処すべき課題を提示してくれるので、併せてチェックしておくと安心です。

Gitユーザー向け

Gitはとても便利ですが、ローカルマシンにマージ済みのブランチが大量に残りがちです。これらのブランチはもう役に立たないうえ、将来作成するブランチ名との衝突の原因にもなります。

単一プロジェクトからマージ済みブランチをすべて削除するコマンド:

git branch --merged master | grep -v "\* master" | xargs -n 1 git branch -d

たった1プロジェクトのためには長いコマンドですね。さらに一気に進めてみましょう。

次のコマンドは、カレントディレクトリ内のすべてのフォルダに順番に移動し、それぞれに対してマージ済みブランチの削除を実行します:

for d in */; do cd $d; echo WORKING ON $d; git branch --merged master | grep -v "\* master" | xargs -n 1 git branch -d; cd ..; done

JavaScript開発者向け

プロジェクト内に埋もれた古いnode_modulesを削除

以下のコマンドは、120日より古いnode_modulesフォルダを検索して削除します。削除された古いプロジェクトでは、再度npm iまたはyarnを実行して依存関係を再インストールする必要があります。ただし、これが通常一番の大掃除になることが多いのです!

4ヶ月(120日)以上前のnode_modulesフォルダをすべて削除:

find . -name "node_modules" -type d -mtime +120 | xargs rm -rf

もっと大胆にやりたい場合は、-mtimeオプションを外せば、すべてのnode_modulesフォルダを削除し、必要になったときに再インストールする運用も可能です。

すべてのnode_modulesフォルダを削除:

find . -name "node_modules" -type d | xargs rm -rf

古いバージョンのNode.jsを削除

使用しなくなった古いNodeのバージョンも削除しましょう。手順はバージョン管理ツールによって異なります。筆者は「n」を使っているので簡単ですが、お使いのツールに合わせて操作してください。

n を使用している場合:
n ls でインストール済みのバージョンを一覧表示し、n rm <version> で不要なものを削除します。
nvm を使用している場合:
nvm ls でインストール済みのバージョンを一覧表示し、nvm uninstall <version> で削除します。
asdf を使用している場合:
asdf list nodejs でインストール済みのバージョンを一覧表示し、asdf uninstall nodejs <version> で削除します。

Ruby開発者向け

cleanupコマンドで古いGemをまとめて整理できます。心配であれば、まず「dryrun」で実行結果だけを確認できます。

gem cleanup --dryrun

内容に問題がないことを確認したら、「dryrun」オプションを外して実際に実行しましょう。

gem cleanup

古いバージョンのRubyを削除

こちらもRubyのバージョン管理ツールに依存します。代表的な2つのツールの手順をご紹介します。

rbenv を使用している場合:
rbenv versions でインストール済みのバージョンを一覧表示し、rbenv uninstall <version> で削除します。
rvm を使用している場合:
rvm list でインストール済みのバージョンを一覧表示し、rvm uninstall <version> で削除します。

Xcode開発者向け

Xcodeはキャッシュをマシンのあちこちに散らばらせる傾向があり、中には数百MBに及ぶものもあります。思い切って掃除しても、また必要になれば再ビルド・再生成されるので安心してください。

CocoaPodsのキャッシュを削除:

rm -rf "${HOME}/Library/Caches/CocoaPods"

利用不可になった古いXcodeシミュレータを削除:

xcrun simctl delete unavailable

アーカイブ、ログ、DerivedDataなどのフォルダを削除:

rm -rf ~/Library/Developer/Xcode/Archives
rm -rf ~/Library/Developer/Xcode/DerivedData
rm -rf ~/Library/Developer/Xcode/iOS Device Logs/

~/Library/Developer/Xcode/iOS Device Logs/内には、接続したデバイスの情報が蓄積されています。過去に接続した古いiOSデバイスのログがあれば、まとめて削除してしまいましょう。

Docker

少なくとも1つのコンテナから参照されていないボリュームは、すべて削除できます。参照されていないボリュームをわざわざ残しておく必要はないですよね?

結果は数十GBになることもあれば、何も削除されないこともあります。とはいえ、試してみる価値は十分にあります!

未使用のローカルボリュームを削除:

docker volume prune

結果はいかに?!

最後に忘れずにゴミ箱を空にして、成果を確認しましょう!

開発者向けMacのストレージ大掃除!空き容量を劇的に増やす手動クリーニング術
なんと30GBもの容量を削減できました!あなたの結果はどうでしたか?

効果は環境によって大きく異なると思いますが、ぜひ結果を教えてください。コメントやSNSで、あなたの削減結果や「ここも掃除すると良い」という開発者向けの定番スポットを共有いただければ、喜んで本記事に追記いたします。


※本記事の元ネタは、Infinite Redの最高技術戦略責任者であり、作家・准教授・世界的な講演者として活躍するGant Laborde氏によるものです。

  1. Macが重い・遅いと感じたら?今すぐ試せるMacクリーンアップ7つの方法

    ```html Macの反応が遅くなり、イライラしていませんか?どんなデバイスでも同じですが、Macも長く使い続けると、ディスクに不要なファイルが蓄積し、パフォーマンスが徐々に低下していきます。しかし、定期的なクリーンアップを行えば、新品同様の快適さを十分に取り戻せます。 「Macの掃除ってどこから始めればいいの?」とお悩みの方に向けて、知っておきたい手順をすべてわかりやすく解説します。 まずはストレージの使用状況を確認しよう 空き容量を増やす前に、現在のストレージ使用状況を把握することが大切です。以下の手順で確認できます。 Appleメニューをクリックし、「このMacについて」を選択します

  2. Macのメールストレージを解放する方法をわかりやすく解説

    メールで受信したファイルが大量にダウンロードされ、Macの動作が重く感じることはありませんか?そのような場合は、Macのメールストレージを整理・削除する必要があります。これはMacのクリーンアップと最適化において重要なステップです。ディスク容量を有効に活用するためには、不要なファイルやジャンクファイルを定期的にチェックすることが欠かせません。 この記事では、Macのメールストレージ容量を減らす方法を、初心者の方にもわかりやすい手順で解説します。ダウンロード済みファイルを手動で削除するのも一つの方法ですが、時間と手間がかかります。そこで本記事では、強力なMacクリーニングアプリ「Disk Cle