GNU/Linux >> Tutoriels Linux >  >> Cent OS

"VFS :Impossible d'ouvrir le périphérique racine "UUID=[UUID]" ou bloc inconnu (0,0)" - Problème de démarrage CentOS/RHEL/OEL 6

Le problème

Le serveur ne parvient pas à démarrer avec le dernier noyau avec les erreurs ci-dessous à partir des journaux de la console :

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

Le serveur démarre avec succès avec les anciens noyaux.

La solution

La dernière version du noyau installée n'a pas mis à jour la ligne initrd dans le fichier /etc/grub.conf

# 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

Le fichier initrd est créé pour le dernier noyau

# 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. Faites une sauvegarde de la configuration actuelle /etc/grub.conf fichier.

2. Modifiez le fichier /etc/grub.conf et ajoutez la ligne manquante. Par exemple :

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

3. Redémarrez avec le dernier noyau.

4. Si l'action ci-dessus échoue, démarrez avec l'ancien noyau et réinstallez le dernier noyau pour mettre à jour correctement grub.conf. Par exemple :

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


Cent OS
  1. Réinitialiser le mot de passe root dans CentOS 7 / RHEL 7

  2. Comment installer MariaDB sur CentOS 7 / RHEL 7

  3. CentOS / RHEL 7 :Guide du débutant sur le pare-feu

  4. Comment ouvrir un port dans CentOS / RHEL 7

  5. "Pas d'espace disponible sur l'appareil" - problème de génération de kdump (CentOS/RHEL)

Comment installer MariaDB sur CentOS 8 / RHEL 8

Comment réinitialiser le mot de passe root perdu dans CentOS 8 / RHEL 8

Comment installer MariaDB sur CentOS 6 / RHEL 6

Réinitialiser le mot de passe root oublié de CentOS 8/RHEL 8

CentOS / RHEL 7 :Comment réinitialiser le mot de passe root

CentOS / RHEL 7 :processus de démarrage