※ 当たり前ですが自己責任でやってください。筆者はエラーに何度か遭遇しました。直ったけど。トラブルシューティング参照。
実行した環境はTimeCapsuleに保存したTimeMachineです。
基本的なやり方
念のためTimeMachineの自動バックアップをオフにしておく。1
tmutil listbackups
でバックアップを確認する
$ tmutil listbackups
/Volumes/Time Machine バックアップ/Backups.backupdb/takc923 の MacBook Pro/2017-11-03-001721
/Volumes/Time Machine バックアップ/Backups.backupdb/takc923 の MacBook Pro/2017-11-10-013213
/Volumes/Time Machine バックアップ/Backups.backupdb/takc923 の MacBook Pro/2017-11-17-012823
/Volumes/Time Machine バックアップ/Backups.backupdb/takc923 の MacBook Pro/2017-11-24-011152
略
sudo tmutil delete
で削除する2。私の環境だと40分くらいかかった。
$ sudo tmutil delete '/Volumes/Time Machine ハ<3099>ックアッフ<309a>/Backups.backupdb/takc923 の MacBook Pro/2017-08-27-024822'
Password:
Deleting: /Volumes/Time Machine バックアップ/Backups.backupdb/takc923 の MacBook Pro/2017-08-27-024822
Deleted (4.4G): /Volumes/Time Machine バックアップ/Backups.backupdb/takc923 の MacBook Pro/2017-08-27-024822
これだけだとsparsebundleファイルのサイズが小さくならないので、これを小さくする。
その操作の前に、データが壊れないようにバックアップボリュームをデタッチする。
$ hdiutil detach /Volumes/Time\ Machine\ バックアップ
"disk2" unmounted.
"disk2" ejected.
sparsebundleファイルを小さくする3。私の環境だと1時間くらいかかった。
$ hdiutil compact /Volumes/takc923/takc923\ の\ MacBook\ Pro.sparsebundle
圧縮を開始中…
空き領域を再び利用可能にしています…
...................................................................................................................................................................................
圧縮の仕上げ中…
空き領域1.1 TBのうち13.5 GBを再び利用可能にしました。
1コマンドで複数消す
こんなコマンドで一番古いバックアップを3つ消せる。
$ tmutil listbackups | head -3 | sed 's/ /\\ /g' | sudo xargs tmutil delete
注意点は、パス名に半角スペースが混じっていて、それが文字列の切れ目だと認識されてしまうので間のsed 's/ /\\ /g'
が必要。4
TimeMachineのサイズを制限する
若干タイトルからずれるけど、あとちゃんと動作の確認してないけど、TimeMachineのサイズを制限できるらしい。
以下のコマンドで制限できる。最後の引数が制限したいサイズ(bytes)5。実行した後再起動したら反映されるらしい。
$ sudo defaults write /Library/Preferences/com.apple.TimeMachine MaxSize 858993459200
トラブルシューティング
こんなエラーが出て肝を冷やした。
$ hdiutil compact /Volumes/takc923/takc923\ の\ MacBook\ Pro.sparsebundle
圧縮を開始中…
空き領域を再び利用可能にしています…
hdiutil: compact failed - 内部エラーです
手動で一回TimeMachineのスナップショット取ったら直った。
こんなエラーも出た。
$ hdiutil compact /Volumes/takc923/takc923\ の\ MacBook\ Pro.sparsebundle
hdiutil: compact failed - 機能が実装されていません
再起動したら↑の「内部エラーです」になって、スナップショット取ったら直った。