web-dev-qa-db-ja.com

カーネルパニック-同期していない:VFS:不明なブロック(0,0)にルートfsをマウントできません

10.10から11.04にアップグレードしようとすると、すべてが再起動までうまくいくように見えました。このエラーメッセージが表示されます。

Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

どうすれば修正できますか?

87
Jeffrywith1e

そのカーネルのinitramfsがありません。 buntu用の詳細オプションの下のGRUBメニューから別のカーネルを選択し、Sudo update-initramfs -u -k versionを実行してversionのinitrdを生成します(versionを置き換えます) 4.15.0-36-generic)などのカーネルバージョン文字列、次にSudo update-grub

76
psusi

Livecdで開始し、ターミナルを開きます

Sudo fdisk -l
Sudo mount /dev/sdax /mnt
Sudo mount --bind /dev /mnt/dev
Sudo mount --bind /dev/pts /mnt/dev/pts
Sudo mount --bind /proc /mnt/proc
Sudo mount --bind /sys /mnt/sys
Sudo chroot /mnt 

これで、update-initramfsとupdate-grubをエラーなしで作成できます。

update-initramfs -u -k 2.6.38-8-generic (or your version)

バージョンがわからない場合。つかいます:

dpkg --list | grep linux-image

そして、Grubを更新するだけです。

update-grub2

システムを再起動します。

50
Tomeu Roig

私の状況では、問題は/bootの容量が100%であったため、最後の2つのカーネル更新が正常に完了しなかったため、再起動時にGRUB2が最新のカーネルを選択すると失敗しました。

インストール済みの最も古いカーネルで起動し、aptitudeを使用して未使用のカーネルを削除することで、問題を解決しました。 aptitudeを使用することにより、アンインストールが行われた後、dpkgは自動的に破損したパッケージの構成を試み、今回は成功しました。

21
sheepeatingtaz

カーネルの更新を中止した後にこれが発生した場合(例:aptitude safe-upgradeの間にシステムがクラッシュした場合)、

  1. 古いカーネルで起動し、
  2. dpkg --configure -aを実行します。

これにより、ブート設定を psusiが説明します として構成するなど、アップグレードが完了します。

18
Raphael

カーネルブートメッセージは、使用できるディスクを示します

たとえば、私の Linux 4.17仮想マシンのセットアップのテスト で、正しいroot=/dev/vdaroot=/dev/vdbに置き換えた場合、最後のメッセージは次のとおりです。

---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)-

ただし、上記の数行のでは、次のタイプのメッセージが表示されます。

VFS: Cannot open root device "vdb" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
fe00          524288 vda
 driver: virtio_blk

vdbが見つかりませんでしたが、/dev/vdaドライバー(virtio_blk)のために読み取ることができるCONFIG_VIRTIO_BLK=yがあることを基本的にまっすぐに教えてくれます。

Tomeuの指示に加えて、chrootの前に以下を行う必要がありました。

Sudo mount --bind /dev /mnt/dev

さらに、chrootの後:

cp -r /usr/lib/i386-linux-gnu/pango /usr/lib/

ここからこれを得た。

0
Jason

/ bootパーティションがいっぱいで、カーネルの更新が失敗したため、この問題が発生しました。 GRUBメニューで古いカーネルから起動することで、これを修正できました。

ブートに成功したとき、古いカーネルのパージを開始しましたが、いくつかの依存関係の問題が発生したため、最初にlinux-serverパッケージをアンインストールする必要がありました

apt-get remove linux-server
apt-get update
apt-get -f install
apt-get upgrade

その後、再起動するとすべてが正常に機能しました!

0

サーバーをレスキューモードで起動し、grubのみを再インストールすることもできます

http://info.w3calculator.com/free-code/linux/recover-from-corrupted-boot-image/

0
Math