01月15日
fstree root invalid, result too largeはAPFSの危険な兆候だった・・・
Macintosh HDのFirst Aidでfstree root invalidと出力されていたり、cpコマンドなどでresult too largeで失敗する、これApple File System(APFS)が壊れている兆候の一つだったようです。
ディスクユーティリティでMacintosh HDを対象にFirst Aidを実行したところ「fstree root invalid」とエラーの結果でしたが、First Aid自体は正常の結果の「操作が完了しました」と表示されています。
これ詳細で出力結果をよく見ないとエラーって気づけませんよね・・・
ターミナルでcp(コピーコマンド)などで大きなファイルをコピーしようとしたところresult too largeで失敗する事象に出会いました。
結果が大きすぎるってどういうこと?って疑問でした。これらはファイルシステムの異常の前兆のようです。すでに進行中でした。
ディスクユーティリティでMacintosh HDを対象にFirst Aidを実行したところ「fstree root invalid」とエラーの結果でしたが、First Aid自体は正常の結果の「操作が完了しました」と表示されています。
これ詳細で出力結果をよく見ないとエラーって気づけませんよね・・・
ターミナルでcp(コピーコマンド)などで大きなファイルをコピーしようとしたところresult too largeで失敗する事象に出会いました。
結果が大きすぎるってどういうこと?って疑問でした。これらはファイルシステムの異常の前兆のようです。すでに進行中でした。
この原因の発端はParallelsで動作させているWindows10(仮想OS)の不調でした。これはまた別でご紹介したいと思います。
この状態から正常な状況へ戻すためには、再フォーマットが必要でした。
ファイルシステムの異常になった状態でのファイル書き込みってなんだかとても不安になりますよね。fstree root ivalidってどんな意味なんでしょうか?これ自体はよくわかりませんが正常ではないってことはわかります。
この状態になると色々な副作用に出会います。
・Fisrt Aidが正常に終わらない。操作は完了しているけど、正常じゃないですよね・・・
・ターミナルから大きなファイル(恐らくfstree root invalidに該当するファイル)を読み取る操作でアクセスできない状態になり、result too largeという結果で失敗します。
・cpコマンド以外でも例えばmd5コマンドでも同様の結果になりました。失敗です。
・このファイルをFinderから削除することはできました。ただ、ゴミ箱を消去しても、見た目の空き容量(このMacについて の ストレージ)は増えていましたが、ターミナルからdfコマンドで確認した空き容量は削除する前と変わっていませんでした。消えているのに容量を握ったままという感じです。
・ファイルを削除した後にFirst Aidを実行しました。状況は悪化しました。fstree rootの部分はほぼチェックの最後の方ですが、削除した後は、snapshotのチェックシーケンスで失敗するようになりました。(エラーになる段階が早まった)
macOSを動かしている状態でのFirst Aidだから失敗しているの?違います。本当に失敗しているようです。この失敗しているmacはMid2015です。同じMojaveで動いているLate2012ではエラーを起こすことなく正常に終了しています。また、Mid2015をCmd+Sでシングルユーザーモードで起動し、fsckでファイルシステムをチェックしてみました。結果はFirst Aidの失敗と同じ結果でした。
このまま動かしていて大丈夫?大丈夫なのかもしれません。ただとても不安になる状態だったのでリカバリーしました。
すでにシングルユーザーモード(macを起動時、Cmd + Sを押すことでシングルユーザーモードで実行できます)でもFirst Aidが正常に終わらないことがわかっています。
First Aidはfsckというファイルシステムを修正する最終手段的なコマンドを実行しています。
もうこれ以上のコマンドを使った手段は思いつきません。そのためファイルシステムを初期化する方法しかありません・・・
Cmd+RでTime MachineからmacOS 復元しました。
fstree root invalidエラーから正常に戻すことができました。
もし、バックアップを取ったことがないって方は、早めにバックアップできるようにしておいたほうが安心ですよ。
ターミナルから大きなファイルをコピーしても正常に終了します。result too largeエラーは解消できました。
見た目の空き容量(このMacについて の ストレージ)とdfした結果はほぼ同様になりました。消せないファイルが消えました。
FirstAidはエラーになることなく、正常に終了します。
この一連の作業中の中で、macOS Mojaveが落ちたことがあります。この結果、fsroot tree invalidの症状がさらに進み?次の段階に入ったようです。fsroot tree invalidの前の段階でエラーになるようになりました。
Checking snapshot 1 of 8
Checking snapshot 2 of 8
・・
と進んでいくんですが、このsnapshotのチェック中にSnapshot is invalidでFist Aidが終了(操作は完了)してしまうように変わりました。
この時は、なんとかしなければと余裕がない状況でした。今思うとSnapshotって一体何?って疑問に思えてきます。
Apple File Systemは、snapshot機能が備わっていました。
スナップショットのファイルリスト等を知るには?不明です。見つけることができませんでした。
こちらのAppleの正式なドキュメントを見るとAPFSにsnapshot機能があることが明記されています。ただAPFSに関連するツールやAPIで公開されている情報では、スナップショットの存在はありませんでした。
https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/APFS_Guide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40016999-CH1-DontLinkElementID_15
普段、Time Machineはネットワーク経由でUSBハードディスクへ保存するようにしています。USBハードディスク上の700GBぐらいTime Machine用に割り当てています。そのためそこそこバックアップ履歴があります。
このためなんでしょうか?フルバックアップ1回分程度でバックアップしたディスクから復元した時より、今回の復元時間は、完了するまでの時間が長く感じました。4時間程かかっています。
ここまでで、fstree root invalid, result too largeはAPFSの危険な兆候だったかもしれないことがなんとなくわかっていただけたでしょうか。Fist Aidでエラーになるので、このエラーを回復する手段はMacintosh HDのフォーマットしか思いつきませんでした。Cmd + RでTime Machineから復元するとフォーマット込みで元に戻すことができたこともわかったかと思います。
First Aidの操作自体は完了しています。実害を感じたらTime Machineから復元し、リセットしたいですね!
この状態から正常な状況へ戻すためには、再フォーマットが必要でした。
fstree root invalidが危ない兆候の理由
ファイルシステムの異常になった状態でのファイル書き込みってなんだかとても不安になりますよね。fstree root ivalidってどんな意味なんでしょうか?これ自体はよくわかりませんが正常ではないってことはわかります。
この状態になると色々な副作用に出会います。
・Fisrt Aidが正常に終わらない。操作は完了しているけど、正常じゃないですよね・・・
・ターミナルから大きなファイル(恐らくfstree root invalidに該当するファイル)を読み取る操作でアクセスできない状態になり、result too largeという結果で失敗します。
・cpコマンド以外でも例えばmd5コマンドでも同様の結果になりました。失敗です。
・このファイルをFinderから削除することはできました。ただ、ゴミ箱を消去しても、見た目の空き容量(このMacについて の ストレージ)は増えていましたが、ターミナルからdfコマンドで確認した空き容量は削除する前と変わっていませんでした。消えているのに容量を握ったままという感じです。
・ファイルを削除した後にFirst Aidを実行しました。状況は悪化しました。fstree rootの部分はほぼチェックの最後の方ですが、削除した後は、snapshotのチェックシーケンスで失敗するようになりました。(エラーになる段階が早まった)
macOSを動かしている状態でのFirst Aidだから失敗しているの?違います。本当に失敗しているようです。この失敗しているmacはMid2015です。同じMojaveで動いているLate2012ではエラーを起こすことなく正常に終了しています。また、Mid2015をCmd+Sでシングルユーザーモードで起動し、fsckでファイルシステムをチェックしてみました。結果はFirst Aidの失敗と同じ結果でした。
このまま動かしていて大丈夫?大丈夫なのかもしれません。ただとても不安になる状態だったのでリカバリーしました。
fstree root invalidを正常に戻した方法
すでにシングルユーザーモード(macを起動時、Cmd + Sを押すことでシングルユーザーモードで実行できます)でもFirst Aidが正常に終わらないことがわかっています。
First Aidはfsckというファイルシステムを修正する最終手段的なコマンドを実行しています。
もうこれ以上のコマンドを使った手段は思いつきません。そのためファイルシステムを初期化する方法しかありません・・・
Cmd+RでTime MachineからmacOS 復元しました。
fstree root invalidエラーから正常に戻すことができました。
もし、バックアップを取ったことがないって方は、早めにバックアップできるようにしておいたほうが安心ですよ。
ターミナルから大きなファイルをコピーしても正常に終了します。result too largeエラーは解消できました。
見た目の空き容量(このMacについて の ストレージ)とdfした結果はほぼ同様になりました。消せないファイルが消えました。
FirstAidはエラーになることなく、正常に終了します。
気になったポイント
1)Checking snapshot 1 of 8 ・・・スナップショットってなに?
この一連の作業中の中で、macOS Mojaveが落ちたことがあります。この結果、fsroot tree invalidの症状がさらに進み?次の段階に入ったようです。fsroot tree invalidの前の段階でエラーになるようになりました。
Checking snapshot 1 of 8
Checking snapshot 2 of 8
・・
と進んでいくんですが、このsnapshotのチェック中にSnapshot is invalidでFist Aidが終了(操作は完了)してしまうように変わりました。
この時は、なんとかしなければと余裕がない状況でした。今思うとSnapshotって一体何?って疑問に思えてきます。
Apple File Systemは、snapshot機能が備わっていました。
Apple File System supports snapshots for creating a point-in-time, read-only instance of the file system.
https://en.wikipedia.org/wiki/Apple_File_System
スナップショットのファイルリスト等を知るには?不明です。見つけることができませんでした。
こちらのAppleの正式なドキュメントを見るとAPFSにsnapshot機能があることが明記されています。ただAPFSに関連するツールやAPIで公開されている情報では、スナップショットの存在はありませんでした。
https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/APFS_Guide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40016999-CH1-DontLinkElementID_15
2)復元に時間がかかった件
普段、Time Machineはネットワーク経由でUSBハードディスクへ保存するようにしています。USBハードディスク上の700GBぐらいTime Machine用に割り当てています。そのためそこそこバックアップ履歴があります。
このためなんでしょうか?フルバックアップ1回分程度でバックアップしたディスクから復元した時より、今回の復元時間は、完了するまでの時間が長く感じました。4時間程かかっています。
まとめ
ここまでで、fstree root invalid, result too largeはAPFSの危険な兆候だったかもしれないことがなんとなくわかっていただけたでしょうか。Fist Aidでエラーになるので、このエラーを回復する手段はMacintosh HDのフォーマットしか思いつきませんでした。Cmd + RでTime Machineから復元するとフォーマット込みで元に戻すことができたこともわかったかと思います。
First Aidの操作自体は完了しています。実害を感じたらTime Machineから復元し、リセットしたいですね!
コメントシステムを利用したくない方はお問い合わせからお願いします。
2013.8.19 DISQUS(外部コメントサービス)の利用を開始しました。
Facebook, google, Twitter等のアカウントで投稿可能です。