From: Michael Prokop Date: Mon, 26 Oct 2009 11:47:20 +0000 (+0100) Subject: Adding support for isofrom/fromiso bootoption. X-Git-Tag: debian/1.173.1-1~31 X-Git-Url: http://git.grml.org/?a=commitdiff_plain;ds=sidebyside;h=0b23566984bd09f571b00153f351dbf7e32c6185;p=live-boot-grml.git Adding support for isofrom/fromiso bootoption. --- diff --git a/scripts/live b/scripts/live index 0fa3900..fa76eb1 100755 --- a/scripts/live +++ b/scripts/live @@ -97,6 +97,11 @@ Arguments () export HOSTNAME LIVECONF ;; + isofrom=*|fromiso=*) + FROMISO="${ARGUMENT#*=}" + export FROMISO + ;; + username=*) USERNAME="${ARGUMENT#username=}" LIVECONF="changed" @@ -1384,6 +1389,17 @@ check_dev () devname="${2}" skip_uuid_check="${3}" + # support for fromiso=.../isofrom=.... + if [ -n "$FROMISO" ] + then + mkdir /isofrom + ISO_DEVICE="$(echo $FROMISO | sed 's|\(/dev/[a-z]*[0-9]*\).*|\1|')" + mount "$ISO_DEVICE" /isofrom + ISO_NAME="$(echo $FROMISO | sed 's|/dev/[a-z]*[0-9]*/||')" + loopdevname=$(setup_loop "/isofrom/${ISO_NAME}" "loop" "/sys/block/loop*" "" '') + devname="${loopdevname}" + fi + if [ -z "${devname}" ] then devname=$(sys2dev "${sysdev}") @@ -1655,6 +1671,15 @@ mountroot () log_end_msg fi + # if we do not unmount the ISO we can't run "fsck /dev/ice" later on + # because the mountpoint is left behind in /proc/mounts, so let's get + # rid of it when running from RAM + if [ -n "$FROMISO" ] && [ "${TORAM}" ] + then + losetup -d /dev/loop0 + grep -q /isofrom /proc/mounts && umount /isofrom + fi + if [ -n "${MODULETORAMFILE}" ] || [ -n "${PLAIN_ROOT}" ] then setup_unionfs "${livefs_root}" "${rootmnt}"