0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

OracleCloudのUbuntu20.04インスタンスでカーネルアップデート後カーネルパニックを起こして起動できない場合の対処方法

Last updated at Posted at 2022-06-12

はじめに

OracleCloudのVM.Standard.A1.Flexシェイプを使用したUbuntu20.04インスタンスでカーネル5.13.0-1033-oracleにアップデートしたところカーネルパニックを起こし動作しなくなった場合への対処法
他のインスタンスを使わずCloudShellを使用した解決法です

原因の解明

カーネルパニックを起こしてしまうと当然SSHも繋がらなくなるのでOracleCloudのCloudShellを利用する
インスタンス->リソース->コンソール接続->CloudShellの起動
すると勝手にインスタンスに接続してくれます
ただ、カーネルパニックを起こしているので何も表示されません。

CloudShell開きっぱなしでそのままインスタンスを再起動してみましょう(ハングしているので直ちに電源断でいいと思います)
しばらくするとCloudShellにカーネルログがずらぁ~っと出てくると思います
end Kernel panic - not syncing: Fatal exception in interrupt
で止まったらCtrl+Fでkernel BUG atと検索してみましょう
kernel BUG at include/linux/fs.h:3104!が引っかかればこの記事の対象です

因みに原因はDocker絡みで、docker.serviceをdisableさせれば正常起動出来るらしいですが、自分が試した限り、

  • ハングしない一瞬のタイミングを狙うのは無理(VM.Standard.A1.Flexの場合)
  • 他インスタンスにアタッチしてシンボリックリンクを解除する→解除してもカーネルパニックを起こす

解決法

カーネルを一時的に変更して起動する

CloudShell開きっぱなしで再起動しましょう
シェルの内容がクリアされたタイミングでEscキーを連打
UEFI(?)が表示されたらBootManager->Oracle ~~ Volumeを選択
またEscキー連打
そうするとGrubが表示されるので「Advance Options for Ubuntu」を選択
問題の1033カーネル以外を選択して起動させます
image.png

SSHなりシェルなりでログインするときちんとさっき選択したカーネルで起動します
image.png

カーネルのアップデート&固定

sudo nano /etc/default/grubでGrubの設定ファイルを開きます

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

この2行を追加します(GRUB_DEFAULTはデフォルトで0になってると思います)
sudo update-grubを実行してパッチ済みカーネルである5.13.0-1034-oracleを落とします

再起動して、再度「Advance Options for Ubuntu」を開くと5.13.0-1034-oracleが追加されているのでそれを起動します
これでカーネルパニックを起こすことなく正常に起動することができます
Grubの設定で最後に選択したカーネルを保存して次起動するときもそのカーネルを使用してブートされます

お疲れ様でした。

参考

0
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?