# helper function for fstab() {{{
createfstab(){
echo "Setting up /etc/fstab"
+ cat > /etc/fstab <<EOF
+# /etc/fstab - created by grml-debootstrap on $(date)
+# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
+# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
+#
+# After editing this file, run 'systemctl daemon-reload' to update systemd
+# units generated from this file.
+#
+EOF
+
if [ -n "$TARGET_UUID" ] ; then
- echo "/dev/disk/by-uuid/${TARGET_UUID} / auto defaults,errors=remount-ro 0 1" > /etc/fstab
+ echo "/dev/disk/by-uuid/${TARGET_UUID} / auto defaults,errors=remount-ro 0 1" >> /etc/fstab
else
echo "Warning: couldn't identify target UUID for rootfs, your /etc/fstab might be incomplete."
fi
for device in $SELECTED_PARTITIONS ; do
GRUB="${device%%[0-9]}"
echo "Installing grub on ${GRUB}:"
- grub-install --no-floppy "$GRUB"
+ if ! grub-install --no-floppy "$GRUB" ; then
+ echo "Error: failed to execute 'grub-install --no-floppy $GRUB'." >&2
+ exit 1
+ fi
+
done
rm -f /boot/grub/device.map
else
echo "Installing grub on ${GRUB}:"
case "$RELEASE" in
lenny|squeeze|wheezy)
- grub-install --no-floppy "$(readlink -f "${GRUB}")"
+ local grub_dev
+ grub_dev="$(readlink -f "${GRUB}")"
+ if ! grub-install --no-floppy "${grub_dev}" ; then
+ echo "Error: failed to execute 'grub-install --no-floppy ${grub_dev}'." >&2
+ exit 1
+ fi
rm -f /boot/grub/device.map
;;
*)
echo "(hd0) ${GRUB}" > /boot/grub/device.map
- grub-install "(hd0)"
+ if ! grub-install "(hd0)" ; then
+ echo "Error: failed to execute 'grub-install (hd0)'." >&2
+ exit 1
+ fi
rm /boot/grub/device.map
;;
esac
return 1
fi
+ if [ -n "${BOOT_APPEND}" ] ; then
+ echo "Adding BOOT_APPEND configuration ['${BOOT_APPEND}'] to /etc/default/grub."
+ sed -i "/GRUB_CMDLINE_LINUX_DEFAULT/ s#\"\$# ${BOOT_APPEND}\"#" /etc/default/grub
+ fi
+
mountpoint /boot/efi &>/dev/null && umount /boot/efi
$UPDATEGRUB