注意書き:
これはGeminiとのやりとりのまとめで、出力もGeminiにさせています。これを実行したことで起きるトラブルには責任を持てないのでリスクを把握した上で参考にしてください。
macOS ストレージ「システムデータ」削減ログ
macOSのストレージを占有する「システムデータ」を調査し、削減を行った記録です。
1. 調査
ターミナルを使用して、ストレージを占有しているディレクトリを特定します。
# 全体の空き容量を確認 df -h /System/Volumes/Data # ルートディレクトリ直下の各ディレクトリ容量を調査 sudo du -sh /Users /Library /private /System /opt 2>/dev/null | sort -rh # ユーザーライブラリ内のキャッシュ容量を確認 du -sh ~/Library/Caches
2. ファイルの削除
アプリケーション関連
- Docker: 不要なイメージやコンテナの削除。
- Claude:
~/Library/Application Support/Claude内のログ・キャッシュを削除。 - 各種キャッシュ:
~/Library/Caches/内の不要なディレクトリ(Notionのアップデート用一時ファイル等)を削除。
Xcode・開発関連
# シミュレータのインストーラーキャッシュを削除 sudo rm -rf /Library/Developer/CoreSimulator/Caches/* # 使用されていないシミュレータデバイスの削除 xcrun simctl delete unavailable # DerivedData(派生データ)の削除 rm -rf ~/Library/Developer/Xcode/DerivedData/*
3. キャッシュのクリアとインデックス再構築
ファイルを削除しても表示上の数字が減らない場合、OSが「パージ可能領域」として保持している可能性があります。
- セーフモード起動: システムキャッシュの破棄と空き容量の再計算を促します。
- Spotlightの再構築: 以下のコマンドでインデックスをリセットします。
bash sudo mdutil -E /
4. ダミーファイルによる強制パージ
OSに容量不足を認識させ、保持されているキャッシュを強制的に解放させる手法です。
(筆者所感:これが一番効いたかも)
ストレージ圧迫コマンド
10GBのダミーファイルを順次作成します。
# 10GBのファイルを5つ作成(回数は空き容量に応じて調整)
for i in {1..5}; do
echo "dummy_$i.dat (10GB) を作成中..."
mkfile 10g ~/Desktop/dummy_$i.dat
sleep 10
done
ダミーファイルの削除
システムデータの表示が減少したことを確認後、作成したファイルを削除します。
rm ~/Desktop/dummy_*.dat
5. 結果
- 削除したデータ: Docker、Claude、Xcodeキャッシュ等、物理的に合計約90GBを削除。
- システムデータの推移: 120GB超から、圧迫作戦を経て最終的に83GBまで減少。
- まとめ: 物理的なファイル削除に加え、再起動や一時的なストレージ圧迫を行うことで、OSが認識する空き容量を正常化できました。
Geminiにインタビュー
Q. 今回の依頼をするなら、どういうプロンプトを最初に渡してほしい?
A. 今後、同じようなストレージ掃除やシステムトラブルの解決を依頼する場合、以下の要素を盛り込んだプロンプトを渡してもらえると、最短距離で解決にたどり着けます。
エンジニアの方であれば、「現在の状況」と「試したこと」を構造化して伝えるのが一番スムーズです。
おすすめの初期プロンプト構成
プロンプトの例:
【依頼内容】 Macのストレージにある「システムデータ」を削減したいです。
【現在の状況】 * Macのモデル:MacBook Pro (Apple M3 Pro / macOS Sonoma) * 総容量:256GB * システムデータのサイズ:現在120GB * 現在の空き容量:約5GB(警告が出ている状態)
【主な用途】 * iOSアプリ開発(Xcode使用) * Dockerを使用したインフラ構築
【すでに試したこと】 * ゴミ箱を空にした *
~/Library/Cachesの一部を削除した【依頼したいステップ】 1. まずはターミナルコマンドを使って、どこが容量を食っているか深掘りしたいです。 2. その結果を見て、削除しても安全なものと、削除の手順を教えてください。 3. ファイルを消しても表示が減らない場合の対策も段階的に教えてください。
なぜこの情報が嬉しいのか(AI側の視点)
- 用途(開発環境): XcodeやDockerを使っていると分かれば、真っ先に
/Library/DeveloperやDocker.rawを疑うことができます。 - 物理的な数値:
df -hやduの結果を出す前に、まず全体のサイズ感がわかると、アドバイスの優先順位を決めやすくなります。 - 試したこと: 二度手間を防ぎ、より高度なコマンド(
tmutilやmkfileなど)を出すタイミングを計れます。
今回のやり取りのように、ターミナルの出力をそのまま貼り付けて共有していただくスタイルは、こちらとしても状況が100%把握できるので非常に助かりました!
だ、そうです。