[CentOS] Re: CentOS 4.5 system doesn't boot after installing latest updates

Tue Sep 25 14:59:21 UTC 2007
Phil Schaffner <Philip.R.Schaffner at NASA.gov>

On Tue, 2007-09-25 at 10:08 +0930, Michael Kratz wrote:
> On 25/09/2007, at 6:41 AM, Scott Silva wrote:
> > Alfred von Campe spake the following on 9/24/2007 1:59 PM:
> >>> Today I decided to install all the latest updates (including the  
> >>> -06 kernel).  The "yum update" seems to have run just fine (no  
> >>> errors), but when I rebooted the system it just sits there with  
> >>> the word "GRUB" in the upper left hand corner.  I booted from the  
> >>> CentOS 4.5 install CD into rescue mode, did a "chroot /mnt/ 
> >>> sysimage" and reinstalled grub and the latest kernel, but it  
> >>> still gets stuck in the same place.  It's not that I can't boot  
> >>> the new kernel; I can't even get to the grub screen!

I have seen this behavior before when the BIOS device order does not
match what is seen by the running system.  Seems that in such cases,
running GRUB from the boot media also sees different device/controller
ordering than the running system and can lead to GRUB being confused
about where to find the stage1 part of the GRUB code.  Either changing
the device order in the BIOS settings (if that is an option) or changing
the order controllers are found in /etc/modprobe.conf seems to help.  In
any case, check /boot/grub/device.map and assure that it matches what
GRUB sees at boot time.  Can check this with the GRUB shell "find"

> >> I'll answer my own question.  In addition to re-installing grub, a  
> >> "grub-install /dev/sda" was required to get the system to boot.  I  
> >> thought that reinstalling grub via yum/rpm would take care of it,  
> >> but apparently it didn't.  Lesson learned, panic averted.
> >> Alfred
> > That is what most of us probably thought you meant when you said  
> > you re-installed grub.

The reinstall of GRUB seems to have been a noop in this case.  Helping
the boot-loader part of GRUB find the /boot/grub/stageX files by running
grub-install was the fix.  What is still open to question is what
changed on the system to make GRUB lose its pointer to the /boot/grub
directory.  Usually takes a change in BIOS settings or actual hardware
configuration to change the device order.

> Out of interest, is this something that is always required when  
> upgrading Grub?
> i.e. should one always manually run "grub-install" /dev/XXX" after  
> doing so?

AFAIK that should not be necessary.