On Wednesday 26 November 2008 02:45:03 am David C. Rankin wrote:
Bob S wrote:
Hello SuSE people,
No answer on my last request so I'll state the problem differently this time.
My Grub bootup menu is different ( many less entries) than the bootloader menu as shown in Yast. Why? How can I fix it ?
Bob S
OK,
Now I found the first part:
<quote>
Hello SuSE people,
I haave three different versions of SuSE and each containing at least two different kernels. Ijust added a jen kernel to 10.3 and 11.0. I checked the menu.lst file for each distro and they are correct. Going into Yast bootloader all of my desired options are there.
Trouble is, that when I reboot the menu doesn't have half the options it shows in Yast. Am I doing something wrong?
Bob S
</quote>
Bob,
Same answer, send the info requested in my first reply so we can be sure,
OK David, here you go but you will need some explanation as to what you see. bob@Easystreet:~> cat /proc/partitions major minor #blocks name 8 0 78150744 sda 8 1 5116671 sda1 8 2 26218080 sda2 8 3 26218080 sda3 8 4 1 sda4 8 5 10490413 sda5 8 6 5245191 sda6 8 7 4851598 sda7 8 16 29316672 sdb 8 17 10241406 sdb1 8 18 14972580 sdb2 8 19 2048287 sdb3 8 20 2048287 sdb4 8 32 244198584 sdc 8 33 10490413 sdc1 8 34 15735667 sdc2 8 35 2104515 sdc3 8 36 1 sdc4 8 37 5245191 sdc5 8 38 5245191 sdc6 8 39 10490413 sdc7 8 40 15735636 sdc8 8 41 15735636 sdc9 8 42 10490413 sdc10 8 43 10490413 sdc11 8 44 10490413 sdc12 bob@Easystreet:~> As you can see, I do not use separate /boot partitions. bob@Easystreet:~> cat /boot/grub/menu.lst cat: /boot/grub/menu.lst: Permission denied bob@Easystreet:~> cat /etc/fstab LABEL=11.0 /11.0 ext3 acl,user_xattr 1 2 LABEL=11.0tmp /11.0tmp ext3 acl,user_xattr 1 2 LABEL=11.0var /11.0var ext3 acl,user_xattr 1 2 /dev/disk/by-id/scsi-SATA_ST3250824AS_4ND4ZTYJ-part3 swap swap defaults 0 0 LABEL=10.3 / ext3 defaults 1 1 LABEL=11.0home /11.0home ext3 defaults 1 2 LABEL=backup /backup ext3 defaults 1 2 LABEL=datastorage /datastorage ext3 defaults 1 2 /dev/sdc7 /fat vfat users,gid=users,umask=0002,utf8=true 0 0 LABEL=10.3home /home ext3 defaults 1 2 LABEL=mediadata /mediadata ext3 defaults 1 2 LABEL=storage /stoarge ext3 defaults 1 2 LABEL=10.3tmp /tmp ext3 defaults 1 2 LABEL=10.3usr /usr ext3 defaults 1 2 LABEL=10.3var /var ext3 defaults 1 2 /dev/sda1 /windows/C vfat users,gid=users,umask=0002,utf8=true 0 0 LABEL=workspace /workspace ext3 defaults 1 2 proc /proc proc defaults 0 0 sysfs /sys sysfs noauto 0 0 debugfs /sys/kernel/debug debugfs noauto 0 0 devpts /dev/pts devpts mode=0620,gid=5 0 0 LABEL=10.2 /10.2 ext3 defaults 1 2 LABEL=10.2home /10.2home ext3 defaults 1 0 LABEL=10.2var /10.2var ext3 defaults 1 0 usbfs /proc/bus/usb usbfs noauto 0 0 LABEL=10.2tmp /10.2tmp ext3 defaults 1 0 bob@Easystreet:~> As you can see, I mount all of my active partitions which allows me to jump back and forth between the distros to look at and/or change things. Easystreet:/ # cat /boot/grub/menu.lst # Modified by YaST2. Last modification on Sun Nov 23 23:16:46 EST 2008 default 1 timeout 8 gfxmenu (hd2,7)/boot/message ###Don't change this comment - YaST2 identifier: Original name: linux### title Regular -- openSUSE 11.0 - 2.6.25.7-jen67 root (hd2,7) kernel /boot/vmlinuz-2.6.25.7-jen67-regular root=/dev/disk/by-label/11.0 resume=/dev/sdc3 splash=silent showopts vga=0x31a initrd /boot/initrd-2.6.25.7-jen67-regular ###Don't change this command - Yast identifier: Original name: openSUSE 10.3 title openSUSE 10.3 root (hd2,7) kernel /boot/vmlinuz-2.6.22.18-0.2-default root=/dev/disk/by-label/10.3 resume=/dev/sdc3 splash=silent showopts initrd /boot/initrd-2.6.22.18-0.2-default ###Don't change this command - Yast identifier: Original name: openSUSE 10.3 title openSUSE 10.3-jen root (hd2,7) kernel /boot/file:/boot/vmlinuz-2.6.25.7-jen67-regular root=/dev/disk/by-label/10.3 resume=/dev/sdc3 splash=silent showopts initrd /boot/initrd-2.6.25.7-jen67-regular ###Don't change this comment - YaST2 identifier: Original name: linux-2.6.25.11-0.1-default### title openSUSE 11.0 - 2.6.25.11-0.1 root (hd2,7) kernel /boot/vmlinuz-2.6.25.11-0.1-default root=/dev/disk/by-label/11.0 resume=/dev/sdc3 splash=silent showopts vga=0x31a initrd /boot/initrd-2.6.25.11-0.1-default ###Don't change this comment - YaST2 identifier: Original name: failsafe### title Failsafe -- openSUSE 11.0 - 2.6.25.11-0.1 root (hd2,7) kernel /boot/vmlinuz-2.6.25.11-0.1-default root=/dev/disk/by-label/11.0 showopts ide=nodma apm=off acpi=off noresume edd=off x11failsafe vga=0x31a initrd /boot/initrd-2.6.25.11-0.1-default ###Don't change this comment - YaST2 identifier: Original name: linux-2.6.18.2-34-default### title openSUSE 10.2 root (hd2,0) kernel /boot/vmlinuz-2.6.18.2-34-default root=/dev/disk/by-label/10.2 resume=/dev/sdc3 splash=silent showopts vga=0x31a initrd /boot/initrd-2.6.18.2-34-default ###Don't change this comment - YaST2 identifier: Original name: windows### title Windows rootnoverify (hd2,7) chainloader (hd0,0)+1 ###Don't change this comment - YaST2 identifier: Original name: floppy### title Floppy rootnoverify (hd2,7) chainloader (hd0)+1 ###Don't change this comment - YaST2 identifier: Original name: failsafe### title Failsafe -- openSUSE 10.2 root (hd2,0) kernel /boot/vmlinuz-2.6.18.2-34-default root=/dev/disk/by-label/10.2 showopts ide=nodma apm=off acpi=off noresume edd=off 3 vga=normal initrd /boot/initrd-2.6.18.2-34-default ###Don't change this comment - YaST2 identifier: Original name: failsafe### title Failsafe -- openSUSE 10.3 root (hd2,7) kernel /boot/vmlinuz-2.6.22.18-0.2-default root=/dev/disk/by-label/10.3 showopts ide=nodma apm=off acpi=off noresume edd=off 3 initrd /boot/initrd-2.6.22.18-0.2-default title Kernel-2.6.18.8-0.10-default root (hd2,0) kernel /boot/vmlinuz-2.6.18.8-0.10-default root=/dev/disk/by-label/10.2 resume=/dev/sdc3 splash=silent showopts vga=0x31a initrd /boot/initrd-2.6.18.8-0.10-default Easystreet:/ # This is the menu that shows up in Yast. It is correct, but ios not the one that shows up on the logon screen aat boot time.
but here is what I suspect is going on. First you have more than one /boot partition. (probably one for each version -- which is 100% OK). Grub, or any boot loader for that matter, can only operate on one /boot partition at a time and only one is the primary /boot partition called after the BIOS passes control to the boot loader. (somebody has got to be first -- Right?)
Right
To boot all of your operating systems, grub, for lack of better words, daisey chains the various /boot partitions together. It starts with which ever one is configured to get control first and then, if it isn't booting the OS associated with that /boot partition, grub will pass control to the next /boot partition associated with the menu entry you chose from the first menu.
Welllll....yes, but as in the menu.lst shown above Grub is directed where to go. Correct me if I am wrong.
Basically:
...<Cut explanation>....
At any stage in the game, you are only going to see the menu entries associated with the /boot/grub/menu.lst file that is on the /boot partition that has control. Grub doesn't scour the all hard drives on each install collecting menu entries from every boot partition it finds. It just installs, configures it self to boot the OS it is installing and then creates an entry to point to the /boot partition that was primary before the current install.
Theortically, I suppose that is correct, but I have never seen Grub come up with a correct menu.lst; You must instruct it to go look and half the time it doesn't find everything and I end up editing by hand. Maybe because of the way I have set everything up. But, I never had trouble making it work properly until now. I just don't know where the menu at boot up time is coming from.
So, what I bet happened in your case is that, whatever your last installed OS was, you are looking at the "menu" created by the yast installer that sits on the /boot partition for that install.
No, you would probably lose that bet because the last install was 11.0 and the menu.lst for 11.0 is not like the menu that comes up at boot time.
You don't see all the choices on every menu because you are only looking at the --- last installed --- menu. The other /boot partitions have their own "menu" and when control is passed to them, you will see the remaining choices.
If you mean that cliccking on another OS in the primary menu.lst that it would bring up another menu.lst for that OS then you would be correct. That used to happen for 10.0, 10.1, and 10.2 after I switched from LILO.
That also explains why when you boot to another of your OS's and check the grub menu with Yast, you will see all of your choices for each install. It's normal, at first perplexing, but normal none the least.
Wellll...I guess that is correct. I never had reason to check the boot loader for each individual OS because it worked properly. After a new OS was installed and I clicked on an older OS it would bring up the older menu.lst where I would again make my choice.
If you want to go check each one individually from any of your OS's, since you have individual /boot partitions, it's pretty easy to do. First, just do a:
cat /proc/partitions
.....
You only hope and pray that the last installed OS configured grub properly to pass control to the previous install correctly. Otherwise, things get real interesting. Throw fake RAID in there and it gets down-right fun:
Don' have RAID but I guess 11.0 didn't hear my prayers. Need to find out why the menu that comes up at boot time is not the proper one and doesn't emulate any of the installedOS's and/or why it's behavior is not as previously. I guess that I just can't grasp how Grub works. Supposed to be simple, rright? Bob S -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org