GNU/Linux >> Linux の 問題 >  >> Cent OS

「VFS:ルート デバイス "UUID=[UUID]" または unknown-block(0,0) を開けません」 – 起動の問題 CentOS/RHEL/OEL 6

問題

コンソール ログからの以下のエラーにより、サーバーは最新のカーネルでの起動に失敗します:

Initializing network drop monitor service
md: Waiting for all devices to be available before autodetect
md: If you don't use raid, use raid=noautodetect
md: Autodetecting RAID arrays.
md: Scanned 0 and added 0 devices.
md: autorun ...
md: ... autorun DONE.
VFS: Cannot open root device "UUID=[UUID]" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Pid: 1, comm: swapper Not tainted 2.6.39-400.325.1.el6uek.x86_64 #1
Call Trace:
 [] panic+0xa6/0x1bd
 [] ? printk+0x41/0x47
 [] mount_block_root+0x1ea/0x29e
 [] mount_root+0x56/0x5a
 [] prepare_namespace+0x170/0x1a9
 [] kernel_init+0x2aa/0x2c0
 [] kernel_thread_helper+0x4/0x10
 [] ? parse_early_options+0x20/0x20
 [] ? gs_change+0x13/0x13

サーバーは古いカーネルで正常に起動しています。

解決策

インストールされた最新のカーネル バージョンは、/etc/grub.conf ファイルの initrd 行を更新しませんでした

# grep -v "^#" /boot/grub/grub.conf | egrep 'Oracle Linux Server|initrd'
title Oracle Linux Server Unbreakable Enterprise Kernel (2.6.39-400.325.1.el6uek.x86_64)
<..initrd line missing ..>
title Oracle Linux Server Red Hat Compatible Kernel (2.6.32-754.35.1.el6.x86_64)
initrd /initramfs-2.6.32-754.35.1.el6.x86_64.img
title Oracle Linux Server Unbreakable Enterprise Kernel (2.6.39-400.298.2.el6uek.x86_64)
initrd /initramfs-2.6.39-400.298.2.el6uek.x86_64.img

最新のカーネル用に initrd ファイルが作成されます

# ls -l /boot/initramfs-2.6.39-400.325.1.el6uek.x86_64.img
-rw-r--r-- 1 root root 23940723 Dec 2 06:07 /boot/initramfs-2.6.39-400.325.1.el6uek.x86_64.img
# du -hs /boot/initramfs-2.6.39-400.325.1.el6uek.x86_64.img
23M /boot/initramfs-2.6.39-400.325.1.el6uek.x86_64.img 

1. 現在の構成のバックアップを取る /etc/grub.conf ファイル。

2. /etc/grub.conf ファイルを編集し、不足している行を追加します。例:

initrd /initramfs-2.6.39-400.325.1.el6uek.x86_64.img

3. 最新のカーネルで再起動します。

4. 上記のアクションが失敗した場合は、古いカーネルで起動し、最新のカーネルを再インストールして、grub.conf を適切に更新します。例:

# yum reinstall kernel-uek-2.6.39-400.325.1.el6uek.x86_6


Cent OS
  1. CentOS 5 /RHEL5にTeamViewerをインストールします

  2. CentOS 6 /RHEL6にTeamViewerをインストールする方法

  3. 「systemd-udevd:Cannot Allocate Memory」および「A start job is running for dev-mapper-\x2droot.device」 – CentOS/RHEL 7 の起動の問題

  1. CentOS 7 /RHEL7でルートパスワードをリセットする

  2. CentOS 7 /RHEL7にMariaDBをインストールする方法

  3. 「デバイスに空き容量がありません」 – kdump 生成の問題 (CentOS/RHEL)

  1. CentOS / RHEL 7 :firewalld の初心者向けガイド

  2. CentOS / RHEL 7 でポートを開く方法

  3. rm:「doc/by-app」を削除できません:機能が実装されていません (CentOS/RHEL 7)