10/27、突如ラップトップの/homeがRead-Onlyに。
Linux3.17.1をつかっており、FSはすべてbtrfs。
/homeだけは一時間に一度スナップショットを取っていた。
アッ……
スナップショットとるとトランザクションが壊れるバグが3.17.0と3.17.1に発生してたらしい。
3.16.xから3.17.xにupdateして、24時間も経たぬ出来事であった。
なるほどね?
この状態でも普通にログインしてデータをR/Wして、と出来ていたのだが、
backrefについてのエラーがずっとdmesgに流れるのは精神衛生上よろしくない。
btrfsck --init-csum-treeを断行。
結果。
そこで、btrfs restoreコマンドを実行。
btrfs restoreで、どのディスクをどのディレクトリにrestoreするか指定して、ひたすらrestore。
input/output errorが出たりして完全に読み書きできなくなったファイルも欠けなく全部サルベージできました。やっぱりBtrFSってすごい。
んで、結論として、FSの復活は無理だったので、mkfs.btrfsでフォーマットしました(懲りずにbtrfsをつかう)
restoreしたファイル郡をそのまま再び書きなおして、UUIDが変わったのでfstabを書き直して、終わり。
無事復旧しました、めでたしめでたし……
Linux3.17.1をつかっており、FSはすべてbtrfs。
/homeだけは一時間に一度スナップショットを取っていた。
@kotatsu_mi ここをな、読むんじゃ https://t.co/43YPQnSH0V
— このアイコンはておくれアイコンと言います (@naota344) 2014, 10月 27
アッ……
スナップショットとるとトランザクションが壊れるバグが3.17.0と3.17.1に発生してたらしい。
3.16.xから3.17.xにupdateして、24時間も経たぬ出来事であった。
@kotatsu_mi そのFS、これが原因だとするとsnapshotにさわると死ぬ病気になってるからintegrationのfsck動かしてね integration はここに書いてる https://t.co/ceChw3y3n2
— このアイコンはておくれアイコンと言います (@naota344) 2014, 10月 27
なるほどね?
うぇい pic.twitter.com/THSTXyKNfi
— 側転幼女おるみんちゃん (@kotatsu_mi) 2014, 10月 27
いや、確認にもう一度btrfsckしたらとんでもなく大量にエラー流れてる……? pic.twitter.com/O0rRLp6vl3
— 側転幼女おるみんちゃん (@kotatsu_mi) 2014, 10月 27
btrfsckで事無きを得たと思ったけど、backrefが死んでいた。この状態でも普通にログインしてデータをR/Wして、と出来ていたのだが、
backrefについてのエラーがずっとdmesgに流れるのは精神衛生上よろしくない。
@kotatsu_mi blockが「blockを参照しているblock」をbackrefとして持つんだけど、元からの参照が見つからないみたいな
— このアイコンはておくれアイコンと言います (@naota344) 2014, 10月 27
@kotatsu_mi まあそもそもbtrfsckはあのへんがあれなのでrefあたりは結構しんようならん
— このアイコンはておくれアイコンと言います (@naota344) 2014, 10月 27
だそうです。btrfsck --init-csum-treeを断行。
結果。
涙目いぇいいぇい pic.twitter.com/FrxVdRNFmd
— 側転幼女おるみんちゃん (@kotatsu_mi) 2014, 10月 28
悪化しました♡そこで、btrfs restoreコマンドを実行。
btrfs restoreで、どのディスクをどのディレクトリにrestoreするか指定して、ひたすらrestore。
input/output errorが出たりして完全に読み書きできなくなったファイルも欠けなく全部サルベージできました。やっぱりBtrFSってすごい。
んで、結論として、FSの復活は無理だったので、mkfs.btrfsでフォーマットしました(懲りずにbtrfsをつかう)
restoreしたファイル郡をそのまま再び書きなおして、UUIDが変わったのでfstabを書き直して、終わり。
無事復旧しました、めでたしめでたし……