From 79f673e0634f4857632e9dad6c4c6301a67b61d8 Mon Sep 17 00:00:00 2001 From: Bob Gilligan Date: Mon, 19 Jul 2010 17:41:09 -0700 Subject: Bugfix 5512: Have grub.cfg use the vmlinuz and initrd.img symlinks if available The /boot directory is populated with vmlinuz and initrd.img files whose names are suffixed with the kernel version string. A vmlinuz and initrd.img symlink points to the "current" version of each file. It is simpler to have the grub.cfg file use the symlink, since then the kernel to boot can be changed by just adjusting the symlinks. --- scripts/vyatta-grub-setup | 112 +++++++++++++++++++++++++++------------------- 1 file changed, 67 insertions(+), 45 deletions(-) diff --git a/scripts/vyatta-grub-setup b/scripts/vyatta-grub-setup index 83a1c1f9..0c83ff4d 100755 --- a/scripts/vyatta-grub-setup +++ b/scripts/vyatta-grub-setup @@ -26,6 +26,15 @@ # # +# +# Usage: +# +# vyatta-grub-setup [ -u ] [ -v ] +# +# The -u and -v flags are mutually exclusive. +# + + # The OS version we are installing version="" @@ -206,52 +215,65 @@ fi done fi - if [ -f "$ROOTFSDIR/boot/vmlinuz" ] && ! eval $UNION ; then - # Set first system boot option. Make KVM the default console in this one. - echo -e "menuentry \"Vyatta $version (KVM console)\" {" - echo -e "\tlinux /boot/vmlinuz $GRUB_OPTIONS $VGA_LOGO $vty_console" - echo -e "\tinitrd /boot/initrd.img" - echo -e "}" - - # Set the second system boot option. Make the serial port be the default - # console in this one. - echo - echo -e "menuentry \"Vyatta $version (Serial console)\" {" - echo -e "\tlinux /boot/vmlinuz $GRUB_OPTIONS $serial_console" - echo -e "\tinitrd /boot/initrd.img" - echo -e "}" - fi + if eval "$UNION"; then + # UNION case + if [ -e "$ROOTFSDIR/boot/$livedir/vmlinuz" -a \ + -e "$ROOTFSDIR/boot/$livedir/initrd.img" ]; then + echo + echo -e "menuentry \"Vyatta $version linux (KVM console)\" {" + echo -e "\tlinux /boot/$livedir/vmlinuz $GRUB_OPTIONS $VGA_LOGO $vty_console" + echo -e "\tinitrd /boot/$livedir/initrd.img" + echo -e "}" + echo + echo -e "menuentry \"Vyatta $version linux (Serial console)\" {" + echo -e "\tlinux /boot/$livedir/vmlinuz $GRUB_OPTIONS $serial_console" + echo -e "\tinitrd /boot/$livedir/initrd.img" + echo -e "}" + + elif [ -n "$union_kernel_versions" ]; then + for kversion in $union_kernel_versions; do + echo + echo -e "menuentry \"Vyatta $version linux$kversion (KVM console)\" {" + echo -e "\tlinux /boot/$livedir/vmlinuz$kversion $GRUB_OPTIONS $VGA_LOGO $vty_console" + echo -e "\tinitrd /boot/$livedir/initrd.img$kversion" + echo -e "}" + echo + echo -e "menuentry \"Vyatta $version linux$kversion (Serial console)\" {" + echo -e "\tlinux /boot/$livedir/vmlinuz$kversion $GRUB_OPTIONS $serial_console" + echo -e "\tinitrd /boot/$livedir/initrd.img$kversion" + echo -e "}" + done + fi + else + # Non-UNION case + if [ -f "$ROOTFSDIR/boot/vmlinuz" ]; then + # Set first system boot option. Make KVM the default console in this one. + echo -e "menuentry \"Vyatta $version (KVM console)\" {" + echo -e "\tlinux /boot/vmlinuz $GRUB_OPTIONS $VGA_LOGO $vty_console" + echo -e "\tinitrd /boot/initrd.img" + echo -e "}" - # create union kernels if they exist - if [ -n "$union_kernel_versions" ]; then - for kversion in $union_kernel_versions; do - echo - echo -e "menuentry \"Vyatta $version linux$kversion (KVM console)\" {" - echo -e "\tlinux /boot/$livedir/vmlinuz$kversion $GRUB_OPTIONS $VGA_LOGO $vty_console" - echo -e "\tinitrd /boot/$livedir/initrd.img$kversion" - echo -e "}" - echo - echo -e "menuentry \"Vyatta $version linux$kversion (Serial console)\" {" - echo -e "\tlinux /boot/$livedir/vmlinuz$kversion $GRUB_OPTIONS $serial_console" - echo -e "\tinitrd /boot/$livedir/initrd.img$kversion" - echo -e "}" - done - fi - - # create other kernels if they exist - if [ -n "$kernel_versions" ]; then - for kversion in $kernel_versions; do - echo - echo -e "menuentry \"Vyatta $version linux$kversion (KVM console)\" {" - echo -e "\tlinux /boot/vmlinuz$kversion $GRUB_OPTIONS $VGA_LOGO $vty_console" - echo -e "\tinitrd /boot/initrd.img$kversion" - echo -e "}" - echo - echo -e "menuentry \"Vyatta $version linux$kversion (Serial console)\" {" - echo -e "\tlinux /boot/vmlinuz$kversion $GRUB_OPTIONS $serial_console" - echo -e "\tinitrd /boot/initrd.img$kversion" - echo -e "}" - done + # Set the second system boot option. Make the serial port be the default + # console in this one. + echo + echo -e "menuentry \"Vyatta $version (Serial console)\" {" + echo -e "\tlinux /boot/vmlinuz $GRUB_OPTIONS $serial_console" + echo -e "\tinitrd /boot/initrd.img" + echo -e "}" + elif [ -n "$kernel_versions" ]; then + for kversion in $kernel_versions; do + echo + echo -e "menuentry \"Vyatta $version linux$kversion (KVM console)\" {" + echo -e "\tlinux /boot/vmlinuz$kversion $GRUB_OPTIONS $VGA_LOGO $vty_console" + echo -e "\tinitrd /boot/initrd.img$kversion" + echo -e "}" + echo + echo -e "menuentry \"Vyatta $version linux$kversion (Serial console)\" {" + echo -e "\tlinux /boot/vmlinuz$kversion $GRUB_OPTIONS $serial_console" + echo -e "\tinitrd /boot/initrd.img$kversion" + echo -e "}" + done + fi fi # Set options for root password reset. Offer -- cgit v1.2.3 From 1fa4e42f825f8622c9c8068592573aa2a63ac0b8 Mon Sep 17 00:00:00 2001 From: Bob Gilligan Date: Mon, 19 Jul 2010 17:45:16 -0700 Subject: 0.17.70 --- debian/changelog | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/debian/changelog b/debian/changelog index 090fc836..8acdc606 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,29 @@ +vyatta-cfg-system (0.17.70) unstable; urgency=low + + [ Stephen Hemminger ] + * Fix language in help text for loadkey + * Use val_help: for Ethernet interface parameters + * bonding vif val_help + * Loopback address node cleanup + * Convert tunnel parameters to new help format + * Convert public-keys help to new format + * Revise static-host-mapping + * Use val_help: features to format better + * Convert syslog commands to new CLI help style + + [ An-Cheng Huang ] + * fix typo, val_help, etc. + + [ Stephen Hemminger ] + * Convert VRRP preempt to bool + * Convert VRRP to new CLI help style + + [ Bob Gilligan ] + * Bugfix 5512: Have grub.cfg use the vmlinuz and initrd.img symlinks + if available + + -- Bob Gilligan Mon, 19 Jul 2010 17:45:16 -0700 + vyatta-cfg-system (0.17.69) unstable; urgency=low [ Stephen Hemminger ] -- cgit v1.2.3