台風による停電のためか、気づくと Ubuntu が再起動してました。
再起動するだけならいいのですが、いつもの GUI が表示されず、
CUI が表示されて、次のようなメッセージが
Welcome to emergency mode! After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot, "systemctl default" to try again to boot into default mode. Give root password for maintenance (or type Control-D to continue):
Welcome じゃないよと思いつつ、
Enter を押すとコマンドの受付を始めたので、
とりあえずメッセージに従ってsystemctl reboot
でリブートしてみましたが、
特に変わらず。。。
お仕事開始です!
原因調査
取り合えず、メッセージにログを見ろと書かれているので、
その通り見てみると、非常に長いログだったので、
エラーだけに絞ってみました。
journalctl -xb | grep error
すると、エラーを起こしているのはSSDのマウントのようです。
実際、df
の結果を見てみると、
エラーを起こしているSSDは表示されていませんでした。
原因
ということで、原因は、
SSDのマウントエラー
らしいということが分かりました。
対処
原因が分かったので、
SSDのマウントエラー撲滅に向けてミッションスタートです。
マウントしてみる
ログのエラーからは詳しいエラーが表示されていなかったので、
とりあえずダメもとでマウントしてみて、エラーメッセージを見てみましょう。
sudo mount /dev/[デバイス名] /[マウント先]
を実行してみると、やっぱりエラーでしたが、
そのメッセージが、
can't read superblock
でした。
停電のせいで障害が起きてそうですね。
修復する
壊れてるとなるとかなり厄介ですが、
うまくいくことを祈って修復を試みます。
sudo fsck /dec/[デバイス名] -p
ファイルシステムの自動修復を行うコマンドです。
再度マウント
実行が終わったら、とりあえずマウントしてみます。
sudo mount /dev/[デバイス名] /[マウント先]
無事マウントに成功しました!
まとめ
スーパーブロックが読めないと言われた時はひやひやしましたが、
自動修復のおかげで助かりました。
停電対策として最初から電源落とすなりしておくべきでしたね。