X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=fai%2Fconfig%2Fscripts%2FDEBIAN%2F11-iank;h=b2c5567533a56e35bcc4a7e0ccb13fbc8f366ab9;hb=d3fb9d4972142e5a1676435dfdefbe0ea821a201;hp=130c7e95dc99ea9ffdab1d9cb094753a30053573;hpb=917771b2981e75635e9b85d14eb73105fcf591b4;p=automated-distro-installer diff --git a/fai/config/scripts/DEBIAN/11-iank b/fai/config/scripts/DEBIAN/11-iank index 130c7e9..b2c5567 100755 --- a/fai/config/scripts/DEBIAN/11-iank +++ b/fai/config/scripts/DEBIAN/11-iank @@ -26,6 +26,7 @@ fi m() { printf "%s\n" "$*"; "$@"; } +source $FAI/distro-install-common/bash-misc-functions fcopy -riB /root @@ -70,7 +71,6 @@ apt-get install -y kexec-tools # that a non-root user can disrupt the system, eg cause a reboot. sed -i '$a kernel.sysrq=1 /^kernel.sysrq=/d' /etc/sysctl.conf - EOFOUTER cmdline_extra="$d16_cmdline $fsf_cmdline_extra" @@ -80,45 +80,28 @@ cmdline_extra="$d16_cmdline $fsf_cmdline_extra" # and with rd.luks.crypttab=no, it works. cmdline="rd.luks.crypttab=no net.ifnames=0 $cmdline_extra" -chroot $FAI_ROOT bash <>/etc/default/grub +u /etc/default/grub.d/iank.cfg <<'EOF' +# note: in git history, you can see code that modified the existing +# GRUB_CMDLINE_LINUX_DEFAULT. That was being cautious in case something +# else modified it, but experience has shown nothing else modifying it. -sed -ri 's/^ *GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT="$cmdline"/' /etc/default/grub -sed -ri 's/^ *GRUB_TIMEOUT_STYLE=.*/GRUB_TIMEOUT_STYLE=menu/' /etc/default/grub -sed -ri 's/^ *GRUB_TIMEOUT=.*/GRUB_TIMEOUT=6/' /etc/default/grub +GRUB_CMDLINE_LINUX_DEFAULT="$cmdline" +GRUB_TERMINAL=console # on xenial, no grub is displayed at all. fix that. -# found just by noticing this in the config file, and a -# warning about it in error.log -sed -i '/^ *GRUB_HIDDEN_TIMEOUT/d' /etc/default/grub - -if type -P update-grub2 &>/dev/null; then - update-grub2 -else - update-grub -fi - +# found just by noticing a warning about it in error.log +GRUB_HIDDEN_TIMEOUT= +GRUB_TIMEOUT_STYLE=menu +GRUB_TIMEOUT=4 +# grub tries to detect error in booting and then wait longer with this entry. +# but that detection doesn't work for us because we have btrfs /boot, and so it flags +# failure always. +GRUB_RECORDFAIL_TIMEOUT=4 EOF +if $ur; then + $ROOTCMD update-grub +fi # I prefer to stick with ifup/down or networkmanager: networkd is not in its # own package, so cant use in other init systems. b. it works fine.