Ubuntu は 16.04 カーネルでシェルに切り替わる

Ubuntu は 16.04 カーネルでシェルに切り替わる

私は何時間も問題に悩まされてきました:

Ubuntu を 15.04 から 15.10 にアップグレードした後、15.10 から 16.04 にアップグレードしましたが、新しいカーネルで起動できません。2 回目のアップグレード後、カーネル 4.4.0-36 と 3.16.0-33 が残っています (4.2.x の痕跡はありません)。このことから、3.16.0-33 を実行したまま 15.10 から 16.04 にアップグレードしたのではないかと考えられます。これが問題の原因かもしれません。

起動時 (4.4.0-36) に、「警告! /dev/mapper/ubuntu--vg-root が存在しません。シェルにドロップします!」というメッセージが表示されます。

3.16.0-33 で起動すると問題なく動作します。

私が試したこと:

  • カーネル (4.4.0-36) を再インストールしました。変化なし。
  • busybox で「vgchange -ay」と入力しようとしましたが、うまくいきませんでした。キーボードが busybox で機能しないのです。
  • 4.4.0-38をインストールしました。結果は同じです。
  • 指示に従おうとするhttp://pifuge.com/ubuntu/V0Wn-cant-find-lvm-root-dropped-back-to-initramfsただし、ファイル /usr/share/initramfs-tools/scripts/local-top/lvm2 には、何かを追加できる「modprobe -q」が含まれていません。

ご協力いただければ幸いです。

ワーナー

さらに詳しい情報:

  • LVM2 を実行しています。(当然ですが) インストールされています。
  • マルチブートなし。Ubuntu のみ。
  • 暗号化なし(私の知る限り)
  • Busybox は入力に反応しません。奇妙なことです。これは、どのように起動しても同じです (3.16.0-33 を実行する場合を除きます。その場合はシステムは正常に起動します)
  • シェル (busybox) にドロップする前に、ルート ディレクトリを約 20 回マウントしようとします。出力は次のとおりです。

開始: ルート ファイル システムを実行しています... 開始: /scripts/local-top を実行しています... lvmetad はまだアクティブではありません。sysinit 中に直接アクティベーションを使用しています。論理ボリューム「ubuntu-vg/root」が見つかりませんでした。完了。 開始: /scripts/local-premount を実行しています... 完了 開始: ルート ファイル システムを待機しています... 開始: /scripts/local-block を実行しています... lvmetad はまだアクティブではありません。sysinit 中に直接アクティベーションを使用しています。論理ボリューム「ubuntu-vg/root」が見つかりませんでした。完了。

(最後のは20回繰り返されます)

ルート デバイスの待機をあきらめました。一般的な問題: ブート引数 (cat /proc/cmdline)、rootdelays の確認 (システムは十分に待機しましたか?)、root= の確認 (システムは間違ったデバイスを待機しましたか?)、モジュールの不足 (cat /proc/modules: ls /dev)、「警告! /dev/mapper/ubuntu--vg-root が存在しません。シェルにドロップします!」

答え1

  • grub.cfg の「root=/dev/mapper/ubuntu--vg-root」を「root=UUID=XXXX」に変更します。
  • mountroot の前のどこかに「vgchange -a y」を追加しました

基本的に、根本的な原因は、ルートがチェックされたときに「/dev/mapper/ubuntu--vg-root」が完全に準備ができていないことです。何らかの方法で、vgchange コマンドが lvm の更新をトリガーし、/dev/mapper に表示される可能性があります。より汎用的にするために、dev マッパー名を使用する代わりに「UUID」を使用することをお勧めします。

答え2

最近、暗号化された lvm にルートを持つ 16.04 Ubuntu Server をインストールしました。カーネル 4.4.0-34 では問題なく起動しましたが、4.4.0-36 では同じ問題が発生しました。lvmetad に関するメッセージが繰り返し表示され、シェルに切り替わります。回避策として、4.4.0-34 をデフォルトの起動オプションとして宣言し、自動更新をオフにしました。そのため、4.4.0-34 をインストールすると、4.4 カーネルが機能するようになるかもしれません。長期的な解決策はまだ見つかっていません。

関連情報