Bug#484501: grub: Really odd code in savedefault.diff
Leandro Dorileo
ldorileo at gmail.com
Fri Jun 6 05:16:29 UTC 2008
Hi Samuel
The patch seems to be ok, I`m gonna give it a try and ask Robert Millan
for commit.
thanks
Samuel Thibault escreveu:
> Package: grub
> Version: 0.97-39
> Severity: normal
> Tags: patch
>
> Hello,
>
> I have to admit I fail to understand how the stage2.c part of
> savedefault.diff was supposed to work correctly. Here is a patch that
> makes it a lot simpler and actually properly working.
>
> Samuel
>
> -- Package-specific info:
>
> *********************** BEGIN /boot/grub/device.map
> (hd0) /dev/hda
> (hd1) /dev/hda6
> *********************** END /boot/grub/device.map
>
> *********************** BEGIN /proc/mounts
> /dev/root / ext3 rw,noatime,errors=remount-ro,data=ordered 0 0
> /dev/root /dev/.static/dev ext3 rw,errors=remount-ro,data=ordered 0 0
> /dev/hda1 /mnt/win ntfs ro,uid=1000,gid=100,umask=0222,nls=iso8859-1,errors=continue,mft_zone_multiplier=1 0 0
> /dev/hda5 /mnt/goinfre vfat rw,noatime,uid=1000,gid=100,fmask=0002,dmask=0002,codepage=cp850,iocharset=cp850 0 0
> /dev/hda4 /mnt/dos vfat rw,fmask=0022,dmask=0022,codepage=cp850,iocharset=cp850 0 0
> *********************** END /proc/mounts
>
> *********************** BEGIN /boot/grub/menu.lst
> # menu.lst - See: grub(8), info grub, update-grub(8)
> # grub-install(8), grub-floppy(8),
> # grub-md5-crypt, /usr/share/doc/grub
> # and /usr/share/doc/grub-doc/.
>
> #terminal --dumb console
>
> ## default num
> # Set the default entry to the entry number NUM. Numbering starts from 0, and
> # the entry number 0 is the default if the command is not used.
> #
> # You can specify 'saved' instead of a number. In this case, the default entry
> # is the entry saved with the command 'savedefault'.
> default 1
>
> ## timeout sec
> # Set a timeout, in SEC seconds, before automatically booting the default entry
> # (normally the first entry defined).
> timeout 5
>
> # Pretty colours
> color cyan/blue white/blue
>
> ### PASSWORD LINE REMOVED ###
> # If used in the first section of a menu file, disable all interactive editing
> # control (menu entry editor and command-line) and entries protected by the
> # command 'lock'
> ### PASSWORD LINE REMOVED ###
> ### PASSWORD LINE REMOVED ###
> ### PASSWORD LINE REMOVED ###
>
> #
> # examples
> #
> # title Windows 95/98/NT/2000
> # root (hd0,0)
> # makeactive
> # chainloader +1
> #
> # title Linux
> # root (hd0,1)
> # kernel /vmlinuz root=/dev/hda2 ro
> #
>
> #
> # Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST
>
> ### BEGIN AUTOMAGIC KERNELS LIST
> ## lines between the AUTOMAGIC KERNELS LIST markers will be modified
> ## by the debian update-grub script except for the default options below
>
> ## DO NOT UNCOMMENT THEM, Just edit them to your needs
>
> ## ## Start Default Options ##
> ## default kernel options
> ## default kernel options for automagic boot options
> ## If you want special options for specific kernels use kopt_x_y_z
> ## where x.y.z is kernel version. Minor versions can be omitted.
> ## e.g. kopt=root=/dev/hda1 ro
> ## kopt_2_6_8=root=/dev/hdc1 ro
> ## kopt_2_6_8_2_686=root=/dev/hdc2 ro
> # kopt=root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2
>
> ## default grub root device
> ## e.g. groot=(hd0,0)
> # groot=(hd0,1)
>
> ## should update-grub create alternative automagic boot options
> ## e.g. alternative=true
> ## alternative=false
> # alternative=true
>
> ## should update-grub lock alternative automagic boot options
> ## e.g. lockalternative=true
> ## lockalternative=false
> # lockalternative=false
>
> ## additional options to use with the default boot option, but not with the
> ## alternatives
> ## e.g. defoptions=vga=791 resume=/dev/hda5
> # defoptions=
>
> ## should update-grub lock old automagic boot options
> ## e.g. lockold=false
> ## lockold=true
> # lockold=false
>
> ## Xen hypervisor options to use with the default Xen boot option
> # xenhopt=vga=text-80x50,keep
>
> ## Xen Linux kernel options to use with the default Xen boot option
> # xenkopt=console=tty0 4
>
> ## altoption boot targets option
> ## multiple altoptions lines are allowed
> ## e.g. altoptions=(extra menu suffix) extra boot options
> ## altoptions=(single-user) single
> # altoptions=(recovery mode) single
> # altoptions=(emergency mode) emergency
>
> ## controls how many kernels should be put into the menu.lst
> ## only counts the first occurence of a kernel, not the
> ## alternative kernel options
> ## e.g. howmany=all
> ## howmany=7
> # howmany=all
>
> ## should update-grub create memtest86 boot option
> ## e.g. memtest86=true
> ## memtest86=false
> # memtest86=true
>
> ## should update-grub adjust the value of the default booted system
> ## can be true or false
> # updatedefaultentry=false
>
> ## should update-grub add savedefault to the default options
> ## can be true or false
> # savedefault=false
>
> ## ## End Default Options ##
>
> title Xen 3.3 / Debian GNU/Linux, kernel 2.6.18.8
> root (hd0,1)
> kernel /boot/xen-3.3.gz vga=text-80x50,keep
> module /boot/vmlinuz-2.6.18.8 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 console=tty0 4
> module /boot/initrd-2.6.18.8
>
> title Debian GNU/Linux, kernel 2.6.25
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.25 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2
>
> title Debian GNU/Linux, kernel 2.6.25 (recovery mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.25 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 single
>
> title Debian GNU/Linux, kernel 2.6.25 (emergency mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.25 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 emergency
>
> title Debian GNU/Linux, kernel 2.6.23
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.23 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2
>
> title Debian GNU/Linux, kernel 2.6.23 (recovery mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.23 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 single
>
> title Debian GNU/Linux, kernel 2.6.23 (emergency mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.23 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 emergency
>
> title Debian GNU/Linux, kernel 2.6.18.8
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.18.8 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2
> initrd /boot/initrd-2.6.18.8
>
> title Debian GNU/Linux, kernel 2.6.18.8 (recovery mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.18.8 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 single
> initrd /boot/initrd-2.6.18.8
>
> title Debian GNU/Linux, kernel 2.6.18.8 (emergency mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.18.8 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 emergency
> initrd /boot/initrd-2.6.18.8
>
> title Debian GNU/Linux, kernel 2.6.18-6-686
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.18-6-686 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2
> initrd /boot/initrd.img-2.6.18-6-686
>
> title Debian GNU/Linux, kernel 2.6.18-6-686 (recovery mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.18-6-686 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 single
> initrd /boot/initrd.img-2.6.18-6-686
>
> title Debian GNU/Linux, kernel 2.6.18-6-686 (emergency mode)
> root (hd0,1)
> kernel /boot/vmlinuz-2.6.18-6-686 root=/dev/hda2 ro vga=extended lapic video=intelfb:1024x768 nmi_watchdog=0 keyboard.default_leds=2 emergency
> initrd /boot/initrd.img-2.6.18-6-686
>
> ### END DEBIAN AUTOMAGIC KERNELS LIST
>
> # This is a divider, added to separate the menu items below from the Debian
> # ones.
> #title Other operating systems:
> #root
>
>
> # This entry automatically added by the Debian installer for a non-linux OS
> # on /dev/hda1
> title Microsoft Windows XP Professionnel
> unhide (hd0,0)
> hide (hd0,3)
> root (hd0,0)
> makeactive
> savedefault
> chainloader +1
>
> title DOS
> unhide (hd0,3)
> hide (hd0,0)
> root (hd0,3)
> makeactive
> savedefault
> chainloader +1
>
> title GNU/Hurd
> root (hd0,5)
> kernel /boot/gnumach.gz root=device:hd0s6
> module /hurd/ext2fs.static -A --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume)
> module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
> boot
>
> title GNU/Hurd Single
> root (hd0,5)
> kernel /boot/gnumach.gz root=device:hd0s6 -s
> module /hurd/ext2fs.static -A --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume)
> module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
> boot
>
> title GNU/Hurd orig
> root (hd0,1)
> kernel /usr/src/gnumach-1-rw/gnumach.orig root=device:hd0s6
> root (hd0,5)
> module /hurd/ext2fs.static -A --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume)
> module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
> boot
>
> title GNU/Hurd test
> root (hd0,1)
> kernel /usr/src/gnumach-1-rw/gnumach root=device:hd0s6
> root (hd0,5)
> module /hurd/ext2fs.static -A --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume)
> module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
> boot
>
> title hda8
> root (hd0,7)
> chainloader +1
>
> title debinst
> root (hd0,1)
> kernel /home/samy/local/installer/build/dest/netboot/debian-installer/i386/2.6/linux vga=normal ramdisk_size=10166 root=/dev/ram rw --
> initrd /home/samy/local/installer/build/dest/netboot/debian-installer/i386/2.6/initrd.gz
> boot
>
> title debinst-brltty
> root (hd0,1)
> kernel /home/samy/local/installer/build/dest/netboot/debian-installer/i386/2.6/linux vga=normal ramdisk_size=10166 root=/dev/ram rw -- brltty
> initrd /home/samy/local/installer/build/dest/netboot/debian-installer/i386/2.6/initrd.gz
> boot
>
> title debinst hd-media
> root (hd0,1)
> kernel /home/samy/local/installer/build/dest/hd-media/2.6/vmlinuz vga=normal ramdisk_size=10166 root=/dev/ram rw -- debian-installer/probe/usb=true preseed/file=/floppy/preseed.cfg
> initrd /home/samy/local/installer/build/dest/hd-media/2.6/initrd.gz
> boot
>
> title funk
> root (hd0,1)
> kernel /home/samy/ens/funk/trunk/src/kernel/funk-i686-0.1.0
> savedefault
> boot
>
> title CD
> root (hd0,1)
> kernel /boot/grub/memdisk.bin
> initrd /boot/grub/sbootmgr.dsk
>
> title halt
> halt
>
> *********************** END /boot/grub/menu.lst
>
> -- System Information:
> Debian Release: lenny/sid
> APT prefers testing
> APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
> Architecture: i386 (i686)
>
> Kernel: Linux 2.6.25
> Locale: LANG=fr_FR at euro, LC_CTYPE=fr_FR at euro (charmap=ISO-8859-15)
> Shell: /bin/sh linked to /bin/bash
>
> Versions of packages grub depends on:
> ii grub-common 1.96+20080512-1 GRand Unified Bootloader, version
> ii libc6 2.7-10 GNU C Library: Shared libraries
> ii libncurses5 5.6+20080308-1 Shared libraries for terminal hand
>
> grub recommends no packages.
>
> -- no debconf information
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Pkg-grub-devel mailing list
> Pkg-grub-devel at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/pkg-grub-devel
More information about the Pkg-grub-devel
mailing list