You are saint, a scholar and gentleman - that was exactly the problem. If I had 
actually bothered booting XP and glanced at the boot.ini file I would have 
remembered that the NTLDR uses a redirected boot sector, but that was the one 
thing I didn\'t try. D\'oh.

Ok, so the problem was running make install which called /sbin/installkernel 
which called grub-install which copies the files again which changes their 
block allocations which means that the old boot sector stored in the XP file 
can\'t find the 1.5 stage.

I agree that this could be regarded as a bug in Redhat\'s installer though, how 
does it know it doesn\'t have to run grub-install (again)?. 

I have a suggestion about how the behaviour of grub-install could be improved 
to compensate for this behaviour. If grub-install did a conditional copy of the 
stage files (only copy them if they are different) then this kind of problem 
could be avoided because the block allocations wouldn\'t change 
and /sbin/installkernel wouldn\'t have to encode knowledge about whether a grub-
install was necessary or not. 

Regards,

jon.

Quoting Yedidyah Bar-David <[EMAIL PROTECTED]>:

> I know it\'s ugly to reply to myself, but anyway, just a small note -
> adding an entry to grub (or otherwise changing its conf) doesn\'t
> require reinstalling it, unlike lilo. \'make install\' in the kernel
> runs /sbin/installkernel, which in RH eventually runs a program
> named grubby, which has no manpage, and which probably reinstalls
> grub (unnecessarily). If you consider this a bug, you can report
> it to RedHat. If you ran grub-install yourself (before trying to
> reboot to what \'make install\' did), it\'s your bug :-(
> 
> Good luck,
> -- 
> Didi
> 
> On Sun, Sep 28, 2003 at 12:25:43AM +0300, Yedidyah Bar-David wrote:
> > Hello Jon,
> > 
> > Your problem isn\'t with grub, but with ntldr. Can you please post your
> > boot.ini? I guess the relevant line is something like this:
> > c:\\somefile=\"GRUB\"
> > where somefile is a copy of the first sector of /dev/hda3.
> > I really can\'t imagine this happening without your intervention, so
> > either you forgot you did it or someone did it for you.
> > How to solve it?
> > 1. The ugly way - copy again your first sector to a file. This is
> > ugly because if your NT is on NTFS you will have to copy this
> > sector to a floppy (or some other FAT partition, network etc.),
> > reboot to NT, and copy it back over somefile.
> > 2. The good way - simply install grub on /dev/hda (the MBR) and add
> > an entry for NT
> > (something like
> > title Windows XP
> > rootnoverify (hd0,0)
> > chainloader +1
> > boot).
> > -- 
> > Didi
> > 
> > On Sat, Sep 27, 2003 at 11:48:58PM +1000, Jon Seymour wrote:
> > > I have had grub installed on my RedHat 8 system for sometime now. It
> had 
> > > been working fine.
> > > 
> > > Just recently, I needed to compile a later kernel (2.4.21) to take 
> > > advantage of some additional functionality.
> > > 
> > > make install on the kernel updated my grub configuration, but I can
> no 
> > > longer boot from the hard disk.
> > > 
> > > The symptom is a console with the following message:
> > > 
> > > GRUB<space>
> > > 
> > > To explain my setup:
> > > 
> > >    * the MBR of hd0 boots into Windows XP on /dev/hda1 [ kept around
> so 
> > > that I can use partition magic ]
> > >    * boot.ini of Windows XP has been configured with one item for 
> > > Windows XP and one for /dev/hda3
> > >    * the Linux root file system is on /dev/hda5 (hd0,4)
> > >    * the boot file system is on /dev/hda3 (hd0,2) and is mounted
> over 
> > > /boot when /dev/hda5 is the root fs.
> > >    * /dev/hda3 and /dev/hda5 are ext2 partitions
> > >   ... see original append for details ...


_______________________________________________
Bug-grub mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-grub

Reply via email to