LoginSignup
2
1

More than 5 years have passed since last update.

Debianがサスペンド後に復帰しない問題

Posted at

症状

ノートパソコンにインストールしたDebian 9をしばらく放置していると
バッテリー切れで電源が落ちてしまった。

バッテリーを回復させてから電源を再起動しても
ブートローダーは起動するがOSが起動しない。

セーフモードで起動を試みると以下のメッセージでフリーズしています。

Suspending console(s) (use no_console_suspend to debug)

コンソールをサスペンドしています→ずっとサスペンドのターン。。。
ということみたいですね。

英語の情報もかなり当たりましたが
どうやったら再起動はするのか
ということが書かれていないことが多いです。

まぁLinux民はそういうこと多いですね。
「環境次第!!! ドヤァ」「君、自分のシステム、理解してる?」
みたいな

原因

よく分かりません。
サスペンドのバグじゃねぇの?

方針

調べものすらできないので、とりあえずデータが飛んでも良いからOSを起動させる。
サスペンドの問題を扱うのはその後。

私はこう考えました
「サスペンド中」でフリーズ
→サスペンドの途中で止まってる
→サスペンドできない
→再起動してもサスペンドの命令を再度実行している
→深みにはまる

つまり
サスペンドの過程を飛ばしてブートしてやれば良さそう

※間違ってたら教えてください

やり方

grub ブートローダーは生きてるのでそっちから手動でブートする。

パーティション表示

grub> ls
(hd0) (hd1,gpt2) (hd1,gpt1) (hd1,gpt0)

どのパーティションにOSが入ってるか確認。(これでOS名が出るパーティションを探す)

grub> ls (hd0)/etc/issue
grub> ls (hd1,gpt2)/etc/issue
...

「Debian~~~みたいなの」見つけたら次のコマンド。(hd1,gpt2)にOSが入ってた場合
※) 「***」の部分はそれぞれ違うので自分の環境にあったものを。(TAB押せば補完されます)
※) sda1とかも同様に自分に合ったものを

grub> set root=(hd1,gpt2)
grub> linux /boot/vmlinux*** root=/dev/sda1
grub> initrd /boot/initrd.img-***
grub> boot

とりあえずこれで復旧しました。

方針について

本来はログファイルをcatで出力してちゃんと原因を探すべきなんでしょうが

  • エディタが使えない→単語検索が非常にダルい
  • grub で馴染みのあるshell コマンドが使えない
  • 何回もフリーズしてHPがどんどん減っていく

という状況だったので許してください。。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1