Das Problem
Der Server startet nicht mit dem neuesten Kernel mit den folgenden Fehlern aus den Konsolenprotokollen:
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
Der Server bootet erfolgreich mit den älteren Kerneln.
Die Lösung
Die installierte neueste Kernel-Version hat die initrd-Zeile in der Datei /etc/grub.conf nicht aktualisiert
# 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
Die initrd-Datei wird für den neusten Kernel erstellt
# 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. Erstellen Sie eine Sicherungskopie der aktuellen Konfiguration /etc/grub.conf Datei.
2. Bearbeiten Sie die Datei /etc/grub.conf und fügen Sie die fehlende Zeile an. Zum Beispiel:
initrd /initramfs-2.6.39-400.325.1.el6uek.x86_64.img
3. Neustart mit neustem Kernel.
4. Falls die obige Aktion fehlschlägt, booten Sie in den älteren Kernel und installieren Sie den neuesten Kernel neu, um die grub.conf ordnungsgemäß zu aktualisieren. Zum Beispiel:
# yum reinstall kernel-uek-2.6.39-400.325.1.el6uek.x86_6