diff options
author | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2010-07-20 09:52:51 -0700 |
---|---|---|
committer | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2010-07-20 09:52:51 -0700 |
commit | c46ba36ab7b7805ecdf6692f4b7f16d98ad4fae2 (patch) | |
tree | fd221cfe02901311177db9e78164915d6367a3c5 /scripts/vyatta-grub-setup | |
parent | 4d7029e46837ab93500d8c45e26f6df05c02c8f1 (diff) | |
parent | 1fa4e42f825f8622c9c8068592573aa2a63ac0b8 (diff) | |
download | vyatta-cfg-quagga-c46ba36ab7b7805ecdf6692f4b7f16d98ad4fae2.tar.gz vyatta-cfg-quagga-c46ba36ab7b7805ecdf6692f4b7f16d98ad4fae2.zip |
Merge branch 'larkspur' of suva.vyatta.com:/git/vyatta-cfg-system into larkspur
Diffstat (limited to 'scripts/vyatta-grub-setup')
-rwxr-xr-x | scripts/vyatta-grub-setup | 112 |
1 files 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 <livedir> ] [ -v <version> ] +# +# 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 |