環境
- Mac mini 2018
- macOS 10.14 (Mojave)
- TimeMachineのファイルシステムフォーマット: Mac OS Extended (Case-sensitive, Journaled, Encrypted)
経緯
Mac mini 2011 (High Sierra)で使っていたTimeMachineの外付けHDDをMac mini 2018 (Mojave)で使おうとつないだところ,容量が足りないエラーが発生しました(前後のマシンのコンピュータ名は異なります).
そこで,tmutil
コマンドを使って過去のバックアップを削除しようとしたところ,次のようなエラーになりました.
$ sudo tmutil delete /Volume/timemachine_disk/Backups.backupdb/computer_name
Error (257) reading: /Volumes/timemachine_disk/Backups.backupdb/computer_name
Total deleted: 0B
当該ディレクトリへのアクセスはできないようです.
$ sudo ls /Volumes/timemachine_disk/Backups.backupdb/computer_name
ls: computer_name: Operation not permitted
これはSIP(System Integrity Protection)というものによる制限のようです.chown
などでアクセス権を回避する方法なども見かけたのですが,SIPがオンの状態ではどうにもうまくいきませんでした.
対処方法
一度SIP(System Integrity Protection)をオフにしてから実行することで削除できるようになりました.
- macOSをシャットダウンする
- Command+Rを押しながらリカバリモードで起動する
- TimeMachineのディスクをディスクユーティリティでマウントする
- ターミナル(ユーティリティメニュー)で
csrutil disable
と入力しSIPをオフにする - macOSを再起動する
- macOSが通常起動したら,TimeMachineのディスクをマウントする
-
tmutil
コマンドでバックアップの削除を実行する(今度はエラーにならずに削除された) - macOSをシャットダウンする
- Command+Rを押しながらリカバリモードで起動する
- ターミナル(ユーティリティメニュー)で
csrutil enable
と入力しSIPをオンに戻す - macOSを再起動する