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

Posted on 2004-11-18
Last Modified: 2013-12-15

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,


Question by:rfr1tz
    LVL 38

    Expert Comment


       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:


    LVL 12

    Assisted Solution

    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

    # 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

    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.
    LVL 38

    Accepted Solution

    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:\, c:\boot.ini to d:\
        Those 3 files are hidden, so you need to go to "Control Panel"--> Folder Options --> View and
        "Show hidden files and folders"
        "Hide protected systems files"

    2. Edit c:\   ( do "c:\> attrib -r -s -h c:\boot.ini" in command prompt )
    [boot loader]
    [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]
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(2)\Windows="Microsoft Windows XP" /fastdetect

    4. Boot into RedHat Linux, edit /etc/grub.conf
    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
    title Windows 2000
         rootnoverify (hd0,0)    <=== may different
         chainloader +2
    ==========For more details about grub.conf, please check this URL:



    LVL 4

    Author Comment

    Hi all,

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


    Featured Post

    Maximize Your Threat Intelligence Reporting

    Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

    Join & Write a Comment

    Using 'screen' for session sharing, The Simple Edition Step 1: user starts session with command: screen Step 2: other user (logged in with same user account) connects with command: screen -x Done. Both users are connected to the same CLI sessio…
    Introduction We as admins face situation where we need to redirect websites to another. This may be required as a part of an upgrade keeping the old URL but website should be served from new URL. This document would brief you on different ways ca…
    Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.
    Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

    728 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    20 Experts available now in Live!

    Get 1:1 Help Now