Apple M1 ProなMacBook Proのソフトウェアアップデートをしようとしたらストレージが足りないとなり、確認してみたらシステムデータが300GB以上を占めていた。 alt text

解決したので備忘録として。

1. 原因の特定

検索するとキャッシュやらdockerのimageやvolumeが占めていることが多いとのことだったが自分の環境では該当せず。 そういえば最近TimeMachineのエラーが頻発していたことを思い出し、スナップショットの削除で解決すると推測。

2. スナップショットの削除をしようとするが・・・

Time Machineを無効化し、スナップショットのリストを表示、UUIDから対象のスナップショットを削除を試みた。

1
2
3
sudo tmutil disable
diskutil apfs listSnapshots
diskutil apfs deleteSnapshot / -uuid UUID

しかし Error: -69529: Unable to delete the given APFS Snapshot というエラーで削除できず。これは起動中のmacOSがこのスナップショットを使用中のため。Recoveryでの削除必要とのこと。

3. Recoveryから削除

macOS復旧から起動する方法 を参考にOptionsからTerminalを表示

ボリューム名を確認

1
diskutil apfs list

対象のVokumeのスナップショットを確認

1
diskutil apfs listSnapshots <diskhoge>

もし APFS Volume Disk (Role): diskhoge (Recovery) とエラーが出た場合にはデータボリュームをアンロックする必要あり。

1
2
3
diskutil apfs unlockVolume <diskhoge>
diskutil mount <diskhoge>
diskutil apfs list

スナップショットを確認し、対象のスナップショットを削除

1
2
diskutil apfs listSnapshots <diskhoge>
diskutil apfs deleteSnapshot disk3s5 -uuid <uuid>

リブート後にシステムデータが適切なサイズになっていればOK
終わりにTime Machineを再び有効化しておきましょう

1
sudo tmutil enable

alt text

キャッシュやdockerが原因じゃないとわかったときはクリーンインストールを覚悟したが無事に解決できてよかった。
おしまい。