How to make GRUB listed all the OS's when Linux box starts

Hi,

On a PC, I installed 3 OS: Win2000, Win XP, and Linux RedHat Enterprise.

I started installing Win2000 first, then Win XP, and install Linux the last. I selected GRUB as the boot loader when installing Linux. When the PC starts, GRUB lists the OS in the following orders:
-- Linux ...
-- DOS

And then if we choose to start DOS, it will lead us into the normal start screen of Windows OS that lists:
-- Window XP Professional
-- Window 2000 Professional

My questions:
Is it possible for GRUB to list directly all the OS in the order: Linux, Win XP, Win 2000, when the PC starts
If it is possible, how I update the GRUB boot loader so that it lists the OS to start in that way.

Thanks for any help,

Rfr1tz




LVL 3
rfr1tzAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

wesly_chenCommented:
Hi,

   No, as I know. Because You have 2 Windows OSs and ntldr (NT loader) handle the Windows XP and Windows 2000 selection.
And Grub just call ntldr when you select DOS. But the other way, you can use ntladr as the first loader then you can have 3
selection menu. Please check the following URL:
http://www.geocities.com/epark/linux/grub-w2k-HOWTO.html

Regards,

Wesly
0
paullamhkgCommented:
I think you can, as long as you know the partition # of your 2 windows you can add entry into your grub.conf

below is the example of grub.conf with 2 windows

#
# Sample boot menu configuration file
#

# Boot automatically after a minute.
timeout 60

# By default, boot the second entry.
default 1

# Fallback to the first entry.
fallback 0

title Windows 2000
unhide (hd0,0)
hide (hd0,1)
hide (hd0,2)
rootnoverify (hd0,0)
chainloader +1
makeactive

# For booting Linux
title  Linux
root (hd0,7)
kernel /boot/vmlinuz-2.2.17 root=/dev/hda8 video=matrox:vesa:261

title Windows XP
hide (hd0,0)
hide (hd0,1)
unhide (hd0,2)
rootnoverify (hd0,2)
chainloader +1
makeactive

you will have 3 OS selection in the startup manual, also if your grub already seat on the MBR, it's hard to change to make use of the nt boot loader.
0
wesly_chenCommented:
Say you have disk layout as follow:
-----------
Windows 2000  C: partition   (hd0,0)
Windows XP     D: partition   (hd0,1)
RedHat Enterprise Linux  /dev/hda4   (hd0,3)
-----------------

1. Copy c:\ntldr, c:\ntdetect.com, c:\boot.ini to d:\
    Those 3 files are hidden, so you need to go to "Control Panel"--> Folder Options --> View and
    check
    "Show hidden files and folders"
    un-check
    "Hide protected systems files"

2. Edit c:\boot.int   ( do "c:\> attrib -r -s -h c:\boot.ini" in command prompt )
-------
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\Windows="Microsoft Windows 2000" /fastdetect

3. Edit d:\boot.ini  ( do "d:\> attrib -r -s -h d:\boot.ini" in command prompt )
------
boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\Windows="Microsoft Windows XP" /fastdetect

4. Boot into RedHat Linux, edit /etc/grub.conf
default=0
timeout=10
splashimage=(hd0,2)/grub/splash.xpm.gz    <=== (hd0,2) may vary, leave your original setting untouch

title Red Hat Linux (2.4.20-e.49)     <=== kernel version may vary, leave your original setting untouch
     root (hd0,3)    <=== / partition may vary, leave your original setting untouch
     kernel /vmlinuz-2.4.20-e.49 ro root=/dev/hda3   <=== kernel version may vary, leave your original setting untouch
     initrd /initrd-2.4.20-e.49.img    <=== kernel version may vary, leave your original setting untouch
title Windows XP
     rootnoverify (hd0,1)     <=== may different
     chainloader +1
     makeactive
title Windows 2000
     rootnoverify (hd0,0)    <=== may different
     chainloader +2
     makeactive
==========For more details about grub.conf, please check this URL:
http://www.redhat.com/docs/manuals/enterprise/RHEL-3-Manual/ref-guide/s1-grub-configfile.html

Regards,

Wesly

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
rfr1tzAuthor Commented:
Hi all,

Thanks so much for the details of the solutions you provide to help.
I really appreciated it.

Rfr1tz
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Linux

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.