Grub2 and multiple boot different ubuntu versions
NoOp
glgxg at sbcglobal.net
Thu Mar 25 01:52:21 UTC 2010
On 03/24/2010 06:25 PM, Goh Lip wrote:
> On 03/25/2010 05:25 AM, Colin Law wrote:
>
>>
>> Many thanks to all for the suggestions, I have learned a lot from
>> working through them. I hope you will all not be upset if I decide to
>> wimp out and just live with what I have, editing /etc/default/grub
>> occasionally as required. I think possibly the possibility of causing
>> myself grief outweighs the benefit.
>
>
> Very good point. Precisely; it's not much of a hassle just editing
> grub.cfg (not even /etc/default/grub and update-grub).
So how would you advise a standard multiboot user to edit this:
> #
> # DO NOT EDIT THIS FILE
> #
> # It is automatically generated by /usr/sbin/grub-mkconfig using templates
> # from /etc/grub.d and settings from /etc/default/grub
> #
>
> ### BEGIN /etc/grub.d/00_header ###
> if [ -s $prefix/grubenv ]; then
> load_env
> fi
> set default="7"
> if [ ${prev_saved_entry} ]; then
> set saved_entry=${prev_saved_entry}
> save_env saved_entry
> set prev_saved_entry=
> save_env prev_saved_entry
> set boot_once=true
> fi
>
> function savedefault {
> if [ -z ${boot_once} ]; then
> saved_entry=${chosen}
> save_env saved_entry
> fi
> }
>
> function recordfail {
> set recordfail=1
> if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
> }
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> if loadfont /usr/share/grub/unicode.pf2 ; then
> set gfxmode=640x480
> insmod gfxterm
> insmod vbe
> if terminal_output gfxterm ; then true ; else
> # For backward compatibility with versions of terminal.mod that don't
> # understand terminal_output
> terminal gfxterm
> fi
> fi
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> set locale_dir=($root)/boot/grub/locale
> set lang=en
> insmod gettext
> if [ ${recordfail} = 1 ]; then
> set timeout=-1
> else
> set timeout=10
> fi
> ### END /etc/grub.d/00_header ###
>
> ### BEGIN /etc/grub.d/05_debian_theme ###
> set menu_color_normal=white/black
> set menu_color_highlight=black/light-gray
> ### END /etc/grub.d/05_debian_theme ###
>
> ### BEGIN /etc/grub.d/10_linux ###
> menuentry "Ubuntu, with Linux 2.6.32-17-generic" --class ubuntu --class gnu-linux --class gnu --class os {
> recordfail
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.32-17-generic root=UUID=<snipped> ro quiet splash
> initrd /boot/initrd.img-2.6.32-17-generic
> }
> menuentry "Ubuntu, with Linux 2.6.32-17-generic (recovery mode)" --class ubuntu --class gnu-linux --class gnu --class os {
> recordfail
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> echo Loading Linux 2.6.32-17-generic ...
> linux /boot/vmlinuz-2.6.32-17-generic root=UUID=<snipped> ro single
> echo Loading initial ramdisk ...
> initrd /boot/initrd.img-2.6.32-17-generic
> }
> menuentry "Ubuntu, with Linux 2.6.32-16-generic" --class ubuntu --class gnu-linux --class gnu --class os {
> recordfail
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.32-16-generic root=UUID=<snipped> ro quiet splash
> initrd /boot/initrd.img-2.6.32-16-generic
> }
> menuentry "Ubuntu, with Linux 2.6.32-16-generic (recovery mode)" --class ubuntu --class gnu-linux --class gnu --class os {
> recordfail
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> echo Loading Linux 2.6.32-16-generic ...
> linux /boot/vmlinuz-2.6.32-16-generic root=UUID=<snipped> ro single
> echo Loading initial ramdisk ...
> initrd /boot/initrd.img-2.6.32-16-generic
> }
> ### END /etc/grub.d/10_linux ###
>
> ### BEGIN /etc/grub.d/20_memtest86+ ###
> menuentry "Memory test (memtest86+)" {
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> linux16 /boot/memtest86+.bin
> }
> menuentry "Memory test (memtest86+, serial console 115200)" {
> insmod ext2
> set root='(hd0,8)'
> search --no-floppy --fs-uuid --set <snipped>
> linux16 /boot/memtest86+.bin console=ttyS0,115200n8
> }
> ### END /etc/grub.d/20_memtest86+ ###
>
> ### BEGIN /etc/grub.d/30_os-prober ###
> menuentry "Windows 7 (loader) (on /dev/sda1)" {
> insmod ntfs
> set root='(hd0,1)'
> search --no-floppy --fs-uuid --set <snipped>
> chainloader +1
> }
> menuentry "Ubuntu, Linux 2.6.31-20-generic (on /dev/sda5)" {
> insmod ext2
> set root='(hd0,5)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.31-20-generic root=UUID=<snipped> ro quiet splash
> initrd /boot/initrd.img-2.6.31-20-generic
> }
> menuentry "Ubuntu, Linux 2.6.31-20-generic (recovery mode) (on /dev/sda5)" {
> insmod ext2
> set root='(hd0,5)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.31-20-generic root=UUID=<snipped> ro single
> initrd /boot/initrd.img-2.6.31-20-generic
> }
> menuentry "Ubuntu, Linux 2.6.31-19-generic (on /dev/sda5)" {
> insmod ext2
> set root='(hd0,5)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.31-19-generic root=UUID=<snipped> ro quiet splash
> initrd /boot/initrd.img-2.6.31-19-generic
> }
> menuentry "Ubuntu, Linux 2.6.31-19-generic (recovery mode) (on /dev/sda5)" {
> insmod ext2
> set root='(hd0,5)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.31-19-generic root=UUID=<snipped>e ro single
> initrd /boot/initrd.img-2.6.31-19-generic
> }
> menuentry "Ubuntu, linux 2.6.24-27-generic (on /dev/sda7)" {
> insmod ext2
> set root='(hd0,7)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.24-27-generic root=UUID=<snipped> ro quiet splash
> initrd /boot/initrd.img-2.6.24-27-generic
> }
> menuentry "Ubuntu, linux 2.6.24-27-generic (single-user mode) (on /dev/sda7)" {
> insmod ext2
> set root='(hd0,7)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.24-27-generic root=UUID=<snipped> ro single
> initrd /boot/initrd.img-2.6.24-27-generic
> }
> menuentry "Ubuntu, linux 2.6.24-26-generic (on /dev/sda7)" {
> insmod ext2
> set root='(hd0,7)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.24-26-generic root=UUID=<snipped> ro quiet splash
> initrd /boot/initrd.img-2.6.24-26-generic
> }
> menuentry "Ubuntu, linux 2.6.24-26-generic (single-user mode) (on /dev/sda7)" {
> insmod ext2
> set root='(hd0,7)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/vmlinuz-2.6.24-26-generic root=UUID=<snipped> ro single
> initrd /boot/initrd.img-2.6.24-26-generic
> }
> menuentry "Memory test (memtest86+) (on /dev/sda7)" {
> insmod ext2
> set root='(hd0,7)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/memtest86+.bin
> }
> ### END /etc/grub.d/30_os-prober ###
>
> ### BEGIN /etc/grub.d/40_custom ###
> # This file provides an easy way to add custom menu entries. Simply type the
> # menu entries you want to add after this comment. Be careful not to change
> # the 'exec tail' line above.
> ### END /etc/grub.d/40_custom ###
to simply edit out the memtest bits? Would I take the chance of deleting a:
> }
> menuentry "Memory test (memtest86+) (on /dev/sda7)" {
> insmod ext2
> set root='(hd0,7)'
> search --no-floppy --fs-uuid --set <snipped>
> linux /boot/memtest86+.bin
> }
to see if it works or not?
You see, it will take quite a bit of work to do that, and a single
mistake could bork grub2 in the process. Plus, how do you keep it updated?
While I very much respect your advise & opinions, I seriously doubt that
modifying grub2 is easier than the former menu.lst and/or 'not much of a
hassle'. Note that Tom H had to provide a method simply to eliminate the
Win7 bits (thanks Tom H!) for the Win7 recovery entries.
More information about the ubuntu-users
mailing list