X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=components%2F9990-overlay.sh;h=d1b9cef44d3479c3eb4cf1d5711c38c82c6ee7bf;hb=4574758abec5d6f661742567c14a89c240ccd0b3;hp=316a21d2cc8b6efd7609584b11186e4e505def81;hpb=7565361fef5dda9d60bb7540e408630caded4bd1;p=live-boot-grml.git diff --git a/components/9990-overlay.sh b/components/9990-overlay.sh index 316a21d..d1b9cef 100755 --- a/components/9990-overlay.sh +++ b/components/9990-overlay.sh @@ -8,16 +8,12 @@ setup_unionfs () rootmnt="${2}" addimage_directory="${3}" - case ${UNIONTYPE} in - aufs|overlay) - if ! cut -f2 /proc/filesystems | grep -q "^${UNIONTYPE}\$" - then - panic "${UNIONTYPE} not available." - fi + modprobe -q -b ${UNIONTYPE} - modprobe -q -b ${UNIONTYPE} - ;; - esac + if ! cut -f2 /proc/filesystems | grep -q "^${UNIONTYPE}\$" + then + panic "${UNIONTYPE} not available." + fi # run-init can't deal with images in a subdir, but we're going to # move all of these away before it runs anyway. No, we're not, @@ -121,6 +117,8 @@ setup_unionfs () log_begin_msg "Mounting \"${image}\" on \"${mpoint}\" via \"${backdev}\"" mount -t "${fstype}" -o ro,noatime "${backdev}" "${mpoint}" || panic "Can not mount ${backdev} (${image}) on ${mpoint}" log_end_msg + else + log_warning_msg "Could not find image '${image}'. Most likely it is listed in a .module file, perhaps by mistake." fi done else @@ -276,7 +274,7 @@ setup_unionfs () panic "only one RO file system supported with exposedroot: ${rootfslist}" fi - mount --bind ${rootfs} ${rootmnt} || \ + mount -o bind ${rootfs} ${rootmnt} || \ panic "bind mount of ${rootfs} failed" if [ -z "${SKIP_UNION_MOUNTS}" ] @@ -303,6 +301,9 @@ setup_unionfs () fi || panic "mount ${UNIONTYPE} on ${unionmountpoint} failed with option ${unionmountopts}" done + # Remove persistence depending on boot parameter + Remove_persistence + # Correct the permissions of /: chmod 0755 "${rootmnt}" @@ -356,8 +357,8 @@ setup_unionfs () done fi - # ensure that a potentially stray tmpfs gets removed - # otherways, initramfs-tools is unable to remove /live - # and fails to boot - umount /live/overlay > /dev/null 2>&1 || true + # ensure that a potentially stray tmpfs gets removed + # otherways, initramfs-tools is unable to remove /live + # and fails to boot + umount /live/overlay > /dev/null 2>&1 || true }