Find the answer to your Linux question:
Results 1 to 10 of 10
I'm a NOOB where it comes to GRUB's config/menu files (and multi-booting), so please keep this in mind when choosing to answer my question ... 'K? (thanks!) I Have an ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Feb 2009
    Location
    USA
    Posts
    6

    Unhappy Problems multi-booting 6 Linux OS's & Windows 7


    I'm a NOOB where it comes to GRUB's config/menu files (and multi-booting), so please keep this in mind when choosing to answer my question ... 'K? (thanks!)

    I Have an eMachines with:
    AMD Athlon II X2 dual-core 250u processor
    1.6GHz, 2 x 512KB L2 Cache
    4GB DDR2 system memory (expandable to 8GB)
    700GB SATA hard drive
    SuperMulti DVD Burner
    10/100 Ethernet
    NVIDIA GeForce 6150SE integrated graphics

    I added an internal Seagate 300GB hdd for storage but a bit later I got a 2TB external hdd (Seagate FreeAgent GoFlex Desk) for my backups & copied all info from the 300GB hdd & cleared all data from that 300GB hdd, created 2 primary partitions & a 8GB swap partition, installed PCLOS FM on the first primary & a '/home' partition on the second. Grub created a dual-boot for me ... all was fine and dandy!

    Then, I got the chance to buy an internal 2TB SATA hdd. Installed it in the machine, created 4 extended partitions, with one being the new '/home' partition and the other 3 for installing 3 other Linux distro's, copied all data off my previous '/home' on the 2nd partition of the 300GB hdd, cleared that partition & installed a 6th distro (remember, I already had PCLOS FM on the 1st partition of the 300GB).

    Altogether, in order of install, I had:
    1) Windows 7 HP 64-bit (on original 700GB hhd)
    2) PCLOS FM (1st primary partition of 300GB hdd)
    3) Debian (on 2nd primary partition of 300GB hdd)
    4) Fedora (on 2nd extended partition of 2TB SATA hdd)
    5) LinuxMint (on 3rd extended partition of 2TB SATA hdd)
    6) Kanotix (on 4th extended partition of 2TB SATA hdd)
    and '/home' (on 1st extended partition of 2TB SATA hdd)

    [EDIT] I forgot to mention, all of the above Linux distro's are the most *recent* versions [EDIT]

    One or two (or three?) of these distro's uses GRUB 2 with the others using GRUB 'Legacy'(?).

    I am thinking that GRUB 2 supercedes GRUB legacy in booting (or am I just shooting blanks in the air?) in installations? I want to get all 7 OS's to be able to boot from a GRUB menu whenever I 1st turn my pc on or reboot...how would I go about this?

    I tried using Super GRUB Disc as well as Rescue Tux thinking that one or the other would detect each distro and their boot requirements automagically ... which in a way it (one of them, anyway) did ... the GRUB menu lists all of them but only Windows 7 and PCLOS will actually boot, Fedora gets part of the way but shows some kind of 'panic' & drops to a prompt.

    How can I change the GRUB (2?) to get all of them to boot on whatever choice I make at the GRUB menu? Or is it even possible? :/

    Thank you all, in advance, for any & all advice...

    QBall
    Last edited by QBall2U; 05-29-2013 at 06:04 AM.

  2. #2
    Linux Guru
    Join Date
    Oct 2007
    Location
    Tucson AZ
    Posts
    3,190
    I am thinking that GRUB 2 supercedes GRUB legacy in booting
    I'm not sure what you mean by that. You can boot systems using Grub Legacy from Grub2 and systems with Grub2 from Grub Legacy, not a problem.

    the GRUB menu lists all of them but only Windows 7 and PCLOS will actually boot
    That would seem to indicate you have the PCLinuxOS Grub in the master boot record. You need to check the entries in the PCLinux menu.lst if you are actually using its Grub to boot. Below is a sample entry in my PCLinuxOS menu.lst which boots Mint on sda10. Grub Legacy counts hard drives and partitions from zero, Grub2 counts hard drives from zero and partitions from one:

    title sda10-Mint-13-Cinnamon
    root (hd0,9)
    kernel /boot/grub/core.img
    You could also use a chainload entry as the one below which boots Zorin on sda12:

    title sda12-Zorin
    root (hd0,11)
    chainloader +1
    I would suggest you edit the menu.lst file for an entry and test. You need to do this as root user.
    Last edited by yancek; 05-29-2013 at 01:06 PM. Reason: Add pertinent info

  3. #3
    Just Joined!
    Join Date
    Feb 2009
    Location
    USA
    Posts
    6
    Quote Originally Posted by yancek View Post
    I'm not sure what you mean by that. You can boot systems using Grub Legacy from Grub2 and systems with Grub2 from Grub Legacy, not a problem.
    You answered that question for me, thanks!

    That would seem to indicate you have the PCLinuxOS Grub in the master boot record. You need to check the entries in the PCLinux menu.lst if you are actually using its Grub to boot. Below is a sample entry in my PCLinuxOS menu.lst which boots Mint on sda10. Grub Legacy counts hard drives and partitions from zero, Grub2 counts hard drives from zero and partitions from one:



    You could also use a chainload entry as the one below which boots Zorin on sda12:
    What is a 'chainload entry' & why would one use it over the other?

    I would suggest you edit the menu.lst file for an entry and test. You need to do this as root user.
    I'm not too sure how to go about that ... should I go to each distro's help forum to find out how GRUB loads their distro?

    Here is what my menu.lst file looks like:
    Code:
    timeout 10
    color black/cyan yellow/cyan
    gfxmenu (hd1,0)/boot/gfxmenu
    default 0
    
    title PCLinuxOS Fullmonty KDE
    kernel (hd1,0)/boot/vmlinuz BOOT_IMAGE=PCLinuxOS_Fullmonty_KDE root=UUID=e5d3840c-3d8b-4d6a-b1b3-b4471e3d37a3 quiet nokmsboot resume=UUID=be70d078-ff9a-4582-8ed5-91731cc64abd vga=791
    initrd (hd1,0)/boot/initrd.img
    
    title failsafe
    kernel (hd1,0)/boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=e5d3840c-3d8b-4d6a-b1b3-b4471e3d37a3 quiet nokmsboot failsafe
    initrd (hd1,0)/boot/initrd.img
    
    title Windows 7 64-bit HE
    root (hd0,0)
    map (0x81) (0x80)
    map (0x80) (0x81)
    makeactive
    chainloader +1
    
    title Debian
    kernel (hd1,0)/boot/vmlinuz-2.6.32-5-686 BOOT_IMAGE=Debian root=UUID=03cbfa04-ab2b-4622-87c8-1a81fdcdc881  vga=791
    initrd (hd1,0)/boot/initrd.img
    
    title Fedora
    kernel (hd1,0)/boot/.vmlinuz-3.8.11-200.fc18.i686.hmac BOOT_IMAGE=Fedora root=UUID=49ad989c-801e-4cff-a68a-d19a858942c3  vga=791
    initrd (hd1,0)/boot/initrd.img
    
    title Kanotix
    kernel (hd1,0)/boot/vmlinuz-3.2.0-24-generic BOOT_IMAGE=Kanotix root=UUID=e5232712-1699-4b20-876e-6a237df76350  vga=791
    initrd (hd1,0)/boot/initrd.img
    
    # This is a divider, added to separate the menu items below from the PCLINUXOS standard grub entries
    title        Other operating systems:
    
    
    # This entry automatically added by the PCLinuxOS redo-mbr for an existing
    # linux installation on /dev/sda3.
    title        Linux (on /dev/sda3)
    root        (hd0,2)
    kernel        /vmlinuz root=/dev/sdc3 ro quiet 
    initrd        /initrd.img
    savedefault
    boot
    
    
    # This entry automatically added by the PCLinuxOS redo-mbr for an existing
    # linux installation on /dev/sdc6.
    title        Fedora release 18 (Spherical Cow) (on /dev/sdc6)
    root        (hd2,5)
    kernel        /boot/vmlinuz-3.6.10-4.fc18.i686 root=/dev/sdc6 
    savedefault
    boot
    
    
    # This entry automatically added by the PCLinuxOS redo-mbr for an existing
    # linux installation on /dev/sdc7.
    title        Debian GNU/Linux (6.0.5) (on /dev/sdc7)
    root        (hd2,6)
    kernel        /boot/vmlinuz-3.2.0-24-generic root=/dev/sdc7 
    initrd        /boot/initrd.img-3.2.0-24-generic
    savedefault
    boot

  4. #4
    Linux Guru
    Join Date
    Oct 2007
    Location
    Tucson AZ
    Posts
    3,190
    What is a 'chainload entry' & why would one use it over the other?
    A chainload entry is the second example I posted above, the one with 'chainloader +1' in it. The first example with the 'core.img' in the entry is to boot a system with Grub2, the chainloader should boot a system with either Grub Legacy or Grub2.

    You need to login as root on PCLinux and edit the menu.lst file. It looks like you used the redo mbr program already as there are duplicate entries at the bottom of the file. Have you scrolled down on the Grub menu and tried the last two entries, Fedora and Debian. They show on different partitions than the Fedora and Debian entries above them in the menu.lst

    The first entries for Debian, Fedora and Kanotix all show them as being on (hd1,0) which is the same partition on which you have PClinux which does boot. You need to change those entries to the correct partition. Based on the information you provided in your first post, Debian should be (hd1,1) on its root line although the second Debian entry shows it as being on (hd2,6). I don't see an entry for Mint unless it is the one on sda3? It's not possible for me to tell which partition each distribution is on so you will need to figure that out. Also, there is only one Extended partition and it is just a container and cannot hold data but, it can contain logical partitions. Logical partitions are from 5 up, EX: sda5, sdb6, sdc7 would all be logical partitions and could contain an operating system or data.

  5. #5
    Just Joined!
    Join Date
    Feb 2009
    Location
    USA
    Posts
    6
    Quote Originally Posted by yancek View Post
    A chainload entry is the second example I posted above, the one with 'chainloader +1' in it. The first example with the 'core.img' in the entry is to boot a system with Grub2, the chainloader should boot a system with either Grub Legacy or Grub2.
    So, what you're saying here is that if the distro I'm using (PCLOS FM) uses Grub 2 (or Legacy?), in order to boot a distro using the other GRUB, I need to
    use the chainloader for the other GRUB ... correct?

    You need to login as root on PCLinux and edit the menu.lst file. It looks like you used the redo mbr program already as there are duplicate entries at the bottom of the file. Have you scrolled down on the Grub menu and tried the last two entries, Fedora and Debian. They show on different partitions than the Fedora and Debian entries above them in the menu.lst
    Which do you suppose is being displayed at boot time, the first listing or the second?

    The first entries for Debian, Fedora and Kanotix all show them as being on (hd1,0) which is the same partition on which you have PClinux which does boot. You need to change those entries to the correct partition. Based on the information you provided in your first post, Debian should be (hd1,1) on its root line although the second Debian entry shows it as being on (hd2,6). I don't see an entry for Mint unless it is the one on sda3? It's not possible for me to tell which partition each distribution is on so you will need to figure that out. Also, there is only one Extended partition and it is just a container and cannot hold data but, it can contain logical partitions. Logical partitions are from 5 up, EX: sda5, sdb6, sdc7 would all be logical partitions and could contain an operating system or data.
    OK, I didn't see that those entries were all showing the same partition, but other than that do the entries look correct as to the correct image or whatever? I guess I'm asking, do all (or most) distro's use the same way of pointing GRUB (Legacy / 2) to what to boot?

    Thank you for taking time to help me understand what to do here!

  6. #6
    Linux Guru
    Join Date
    Oct 2007
    Location
    Tucson AZ
    Posts
    3,190
    So, what you're saying here is that if the distro I'm using (PCLOS FM) uses Grub 2 (or Legacy?), in order to boot a distro using the other GRUB, I need to
    use the chainloader for the other GRUB ... correct?
    There may be other ways but I'll say those are the only ways I am familiar with and certainly the most commonly used. Either method I posted earlier will boot a Grub2 system from Grub Legacy. Since you are using PCLinux to boot and it still uses Grub Legacy, I posted those examples. Chainloading a system using Grub Legacy from a Grub2 has a similar but still different entry.

    All the listings should be displayed. Everything you see in the menu.lst file should be displayed on screen when you boot in the order they are listed in the menu.lst file. That is, if you didn't change the default. Do you see all the entries when you use the down arrow on your keyboard?

    The entries look OK. You might scroll down on the boot menu and try the second Debian and Fedora. If they boot, just remove the other entries.

    If you change the (hd1,0) for the other systems and they don't boot, make a note of any error message to post here.

  7. #7
    Just Joined!
    Join Date
    Feb 2009
    Location
    USA
    Posts
    6
    I looked at the grub.cfg files for each distro and it looks like the reason(s) they are not booting is that there are entries in each grub.cfg that, I'm assuming, each distro needs in order to boot - these entries are not in menu.lst for each distro?

  8. #8
    Linux Guru
    Join Date
    Oct 2007
    Location
    Tucson AZ
    Posts
    3,190
    That's why you need the chainload or core.img entries. This will just have the Grub bootloader from PCLinux point to the partition for the Grub2 systems and these systems will take over the booting. You need to manually enter them in menu.lst for each Grub2 system. Copying the files from any of your grub.cfg files to the menu.lst definitely will not work.

  9. #9
    Just Joined!
    Join Date
    Feb 2009
    Location
    USA
    Posts
    6
    Quote Originally Posted by yancek View Post
    That's why you need the chainload or core.img entries. This will just have the Grub bootloader from PCLinux point to the partition for the Grub2 systems and these systems will take over the booting. You need to manually enter them in menu.lst for each Grub2 system. Copying the files from any of your grub.cfg files to the menu.lst definitely will not work.
    So, all I have to do is add 'chainloader +1 (or if it has an additional entry for 'failsafe' add '+2'?) to that distros entry listing?

    I never had any problems with multi-booting back in my earlier days of booting Linux & Windows (early 2000's) - - I'd have Windows installed 1st, then install one after the other (up to 3 linux distros) and not have any problems with booting *any* of the installed OS's! Evidently something (in Grub?) has changed since those days? It seems like Grub used to find all the info each OS needed without me having to manually change anything ... of course I only had two different hard drives, not three but still I wouldn't think that *that* has anything to do with Grub not detecting other distro's updating the grub.cfg / menu.lst?

    So, in order to use the 'chainloader +1 (or +2 or +3?)', I need to go to each distro's partition
    Code:
    /root/grub/grub.cfg
    (or in PCLOS's case '/boot/menu.lst') & edit out other distro's info in order to see only that one distro's boot listing?

    Sorry to come across as a complete ninny but, like I said up above, Grub used to handle all the configuration itself.

    Would it help if I listed each distro's grub.cfg / menu.lst in a separate post or attachment?

    Thank you for all your help...
    QBall

  10. #10
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, in Chicago, or in a galaxy far, far away.
    Posts
    11,633
    While it is possible to multi-boot so many systems, I do not recommend that! It is a direct violation of the KISS principal, and likely to leave you up to your ya-ya's in deep do-do... Instead I much more highly recommend that you install a virtual machine manager such as VirtualBox and run the most systems in a virtual machine - much safer overall. The only exception to that would be if you need one or two of those to have full, unfettered access to all machine hardware. Those you can multi-boot if necessary. I regularly run a number of operating systems (Windows, Linux, Solaris, QNX, DOS, and more) in virtual machines, even doing kernel development on them. Honestly, I prefer to run an enterprise-class Linux system as the host OS since it handles hardware pass-thru to guest systems (USB, serial ports, etc) much better than Windows 7 does (speaking from extensive personal experience).
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •