Fix shellcheck issue SC2174
[grml-debootstrap.git] / chroot-script
index 96fba0a..a5f92c4 100755 (executable)
@@ -470,8 +470,18 @@ timezone() {
 # 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
@@ -616,19 +626,31 @@ grub_install() {
      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