High Sierraの「ローカルスナップショット」に翻弄されて

macOSシリーズ14番目のバージョンである「 #macOS_High_Sierra 」は「 #macOS_Sierra 」の後継として2017年6月5日にリリースされました。でも、私が「Sierra」から「High Sierra」にアップグレードしたのは7ヶ月半後の2018年1月20日でした。
メンテナンスに利用しているアプリケーション類が新しいディスクフォーマット「 #APFS 」に対応していなかったという理由からでしたが、1月19日にAPFSに対応した「 #TechTool_Pro 9.6 」にアップグレードしたこともあり、OSのバージョンアップに踏み切りました。(愛用している「 #Disk_Warrior 」は未対応です。)
OSのインストールは特に差し障りもなく済み、リリース後7ヶ月以上経っているのでアプリケーションの動作も至って平穏でした。同時進行的に利用しているホスティングシステム「ヘテムルさんで旧サーバーから新サーバーへお引越し」なんてリスキー?をかまして多様なアプリケーションをぶん回しても、作業環境でのトラブルはありませんでした。
「こんなに順調にいって何もなければいいなあ。」なんて思ったかもしれません。

ところが、ありました!
まず、「 #Time_Machine 」動作がおかしい。よく「失敗しました。」とメッセージが出るようになりました。まあ、それは再起動かけたり #ディスクチェック かけたりすると大丈夫そうなので、そんないい加減な対応で済ませておりました。でも、時間が経つにつれ「いやーん。」なことが気になり始めました。
#システム の #ハードディスク を使用している容量が #ズビズビ (このくらいの感覚)と増えていくのです。
せっかく #清水舞台 やら #槍ヶ岳山頂 やら落ちたり登ったり大枚叩いて購入した1TBの #SSD が!いつも半分ぐらいの容量を維持するように整理整頓して利用しようねと心に誓っていたのに!ズビズビ容量が増えて遂には #利用可能領域 (空き)が4分の1になってしまいました。

システムの容量が350GBを越えている!
なんとシステムの容量は350GB越え!「こわいですねこわいですね。見なかったことにしましょう。はいさようなら。」とは性格的に無理なのできっちり調べて、未解決しました。そう!未解決です。でもご安心を、運用はままになりますが利用可能領域は一気に取り戻せます。

なんと!システムの容量が300GB近く減った。
さて最初は、システムが大きのだから何かのキャッシュだろうと(まあ結果間違いでは無い。)思って調査して行き当たったのが「システム容量が大きすぎる」(感謝。)でした。それを辿って「容量が一致しない」(感謝。)とか「coresファイルの扱いについて」(感謝。)を確認して安全性を担保してから、 #ターミナル を利用して「 #cores 」さんを眺めたところ容量は0でした。ハズレ。
他のフォルダやらファイルやらをターミナルで「sudo du -g -x -d 5 / | awk ‘$1 >= 5{print}’(サイズが5GB以上だったらリストしておせーてね。)」と、探ってみても容量の大きなものには行き当たりません。(こちら「ハードディスクの空き容量が極端に少なくなる場合の対処方法」にいろいろと解説あります。感謝。)

同じパソコンで自分の仕事をしながら、不具合の調査しながら施述してます。我ながらアホウかと思いますが、それに耐えられる #パソコン のシステムの進化には今更ながら感心します。でも、万策?つきて寝ました。

夜中に目がさめるとすぐにトラブルについて頭が回り始めます。いつものこと。アプローチを変えることに気がついたので、起きて調査を再開しました。午前3時半。
今度は最近はえらく時間がかかるようになっていた「 #Disk Utility 」によるディスクチェックの時、「 #詳細を表示 」すると現れる「 #snapshot 」という項目がありました。(ひとつひとつのチェックに時間がかかる上に94個もありやがる。)これをネタにして検索をしてみると「【Tips】macOS High Sierraでファイルを削除しても空き容量が増えない問題に対処する」にいきあたり、ビンゴでした。感謝。

容量問題が起こる条件は、
(1)macOS High Sierraの #Mac
(2)APFSフォーマットのシステムディスク
(3)Time Machineを利用
です。「High Sierra」以前はノート型だけだったりしたようですが、私のケース( #MacBook_Pro 13inch #Late2016 )と現況では以上の条件にご注意をください。(って「Time Machine」を使ったら新しいの全部じゃん。)
いろいろと仕様が変わってくれたようですが、ともかくこの条件下ではシステムドライブ内に「ローカルスナップショット」が自動的(勝手)に作れらます。Time Machineのドライブではありませんよ。そして #不可視 以上に不可視?ってなに?気を利かせてシステムドライブの利用可能領域が10%を切るまでは増産をしてくれるそうです。(おいらのSSDの9割を占有するつもりでいたんか?われ!心安らかな #ストレージ ライフを脅かすひどい #仕様 です。そかさ。)

まあいい。今は自らを取り戻す時です。
まずはターミナルを開いて、敵の姿を確認しましょう。

Last login: Mon Mar 12 04:22:36 on console
$ sudo tmutil listlocalsnapshots /
Password:(管理者権限のパスワードを入力)
com.apple.TimeMachine.2018-01-21-午前105538
com.apple.TimeMachine.2018-01-21-午前112437
com.apple.TimeMachine.2018-01-21-午前115118
com.apple.TimeMachine.2018-01-22-午後101008

com.apple.TimeMachine.2018-03-11-午後53153
com.apple.TimeMachine.2018-03-11-午後63243
$

いるいる。 TimeMachine の後ろに、ほんとに94項目です。
よーし一気に殲滅だあ。(つぎのコマンドはどこで見つけたか失念しました。感謝。)

$ for date in $(tmutil listlocalsnapshots / | perl -pe 's/com.*(2018.*)/\1/'); do echo "deleting $date";
sudo tmutil deletelocalsnapshots $date; done
deleting 2018-01-21-午前105538
Password:
Error parsing argument 2018-01-21-午前105538
deleting 2018-01-21-午前112437
Error parsing argument 2018-01-21-午前112437

deleting 2018-03-11-午後63243
Error parsing argument 2018-03-11-午後63243
$

あれ?
当たり前だとは思うのですが #2バイト文字 の「午前」と「午後」が通らないようです。
試しに「午前105538」を「105538」として、

$ tmutil deletelocalsnapshots 2018-01-21-105538
Deleted local snapshot '2018-01-21-105538'
$ sudo tmutil listlocalsnapshots /
Password:
com.apple.TimeMachine.2018-01-21-午前112437
com.apple.TimeMachine.2018-01-21-午前115118

削除できました。
ここで気をつけなくてはいけないのは、たとえば「午前63313」は「063313」に、「午後105359」は「225359」としなくては処理されないということです。でも、これだと一気にとは参りません。
本当は表記を #1バイト文字 にするようなコマンドやらもあったのでしょう。でも、大して数もないのでテキストエディタで正規表現などをつかって差し替えたコマンドリストを作ってやり、一行一行を改行込みで #コピペ してやると #リターンキー を押さなくとも続けて処理をしてくれるので、それで「ローカルスナップショット」を駆逐しました。(ここのところ割と紆余曲折ありましたけど…、)

念のため、再起動やらディスクチェックをかまして、前述の通りすっかりシステム容量をシェイプアップできました。(やた!)6時間ぐらいは費やしてしまいました。とほほ。でもこれで容量問題は解決しました。

最後に「Time Machine」の利用ですが、結局はそのままで今でも「ローカルスナップショット」が絶賛!作られています。

ターミナルからローカルスナップショッを確認する。
「High Sierra」以前は製造中止が命令できた(「Macのローカルスナップショットを消して容量を増やす!!」感謝。)ようですが、今はコマンドを受け付けてくれせん。(試しました。)それで「Time Machine」を管理するユーティリティ(「High Sierraで #TimeMachineEditor を使う、バックアップ間隔をカスタマイズ」感謝。)も検討したのですが、自分に余計な作業タスクが増えるだけという判断で利用はやめました。
さらに「Time Machine」の動作不良も解消するべくハードディスクを初期化して設定し直したのですが、相変わらず失敗を繰り返しています。なんでや?
というわけで、手は尽くしたものの根本的な解決には至りませんでした。苦労した分だけ苦労が増える感触。まあ人生なんてそんなもの。そかさ。

「High Sierraの「ローカルスナップショット」に翻弄されて」への1件のフィードバック

  1. 追伸、
    「一行一行を改行込みで #コピペ してやると #リターンキー を押さなくとも続けて処理をしてくれる」と記述いたしましたが、 #複数行 をまとめてコピペしてやると一気に削除できます。ターミナルの利用方法をよくわかっていないので今更判明いたしました。もしやと思ったらやってみるものですね。そかさ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.