Multibooting

Terry Linhardt linhardt at swbell.net
Thu Nov 25 16:32:09 UTC 2004


Aleksandar Milivojevic wrote:

> Wilson Woon wrote:
>
>> Hi all....
>>
>> I'm trying to install Windows XP, Fedora Core 3 and RedHat Linux 9 all
>> in one hard disk. At first I installed Windows XP and then Fedora Core
>> 3. I use the Grub loader to load both of them. However, when it comes
>> to RedHat 9, I'm not sure how to do? How do I configure the Grub
>> loader so that it will detect RedHat 9 as well? Do I need to install
>> the Grub loader when installing RedHat 9 since  already have one?
>> How do I solve this problem? Please help. I don't mind reformatting
>> the whole HDD if necessary...
>
>
> Simple.  Don't install or configure any boot loader with RedHat9.  
> Than boot into FC3 and edit grub.conf.  Copy the lines you have for 
> FC3 (they start with title line, and there's usually three more 
> lines), and edit them accordingly.  You'll probably end up with 
> something like this:
>
> title Red Hat Linux 9 (2.4.xx-xx)
>         root (hd0,0)
>         kernel /boot/vmlinuz-2.4.xx-xx ro root=/dev/hda1
>         initrd /boot/initrd-2.4.xx-xx.img
>
> title Fedora Core 3 (2.6.xx-xx)
>         root (hd0,1)
>         kernel /boot/vmlinuz-2.6.xx-xx ro root=/dev/hda2
>         initrd /boot/initrd-2.6.xx-xx.img
>
> Rreplace xx-xx with your kernel version.  Of course, you'll need to 
> replace all references to disks and partitions to match your actual 
> configuration.
>
> The root line tells wich disk and which partition on it contains file 
> system where your kernel is.  Second two lines tell where relative to 
> this root your kernel and initrd images are (so really, two kernel 
> lines are pointing to two different directories, one is pointing to 
> /boot on hda0,0, the other is pointing to /boot on hd0,1).  Root 
> option in kernel line isn't for boot loader, it is for kernel.  It is 
> not the same as root line in grub.conf.  That option tells kernel 
> which partition to mount as root file system during boot.
>
> Grub and kernel are numerating disks differently, so root line and 
> root option are likely to be different.  Grub starts counting with 0, 
> kernel starts counting with 1 for both partitions and disks.  So "root 
> (hd0,0)" and "root=/dev/hda1" from above example are referencing the 
> same disk (grub hd0 is kernel hda) and same partition (grub hd0,0 is 
> therefore kernel hda1, and grub hd0,1 is what kernel sees as hda2).
>
> If you have /boot as separate file system in your Red Hat 9 install, 
> root line in grub.conf should point to that parition!  This is very 
> important!  root line should always point to partition where kernel 
> and initrd image are stored.  kernel and initrd lines should point to 
> files relative to this partition, not relative to your root file 
> system (so that would be /vmlinuz-xxx and /initrd-xxx.img in this 
> case)!  Root option in kernel line should point to where your root 
> file system is (in this case, root line and root kernel option will 
> point to two different partitions)!
>
For whatever it's worth, this method is the way I do it. Works great. I 
have multiple versions of Linux installed, but only one boot loader.  I 
edit grub.conf to add the proper lines when the kernel is upgraded.  You 
just have to know where the root partition is for each version, so you 
can properly modify the lines in each "title" section of grub.conf.

Regards...Terry




More information about the users mailing list