summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Suchanek <hramrach@centrum.cz>2008-05-31 21:18:47 +0200
committerDaniel Baumann <daniel@debian.org>2011-03-09 17:47:59 +0100
commitf02ff60da1a862bb4eb0631cb9b7e527ffa1f32e (patch)
tree16686c55dd231cf866efbaee8619901af59da1a5
parent9be31760d902a1728a4b786f2a8844697bad5038 (diff)
downloadlive-boot-f02ff60da1a862bb4eb0631cb9b7e527ffa1f32e.tar.gz
live-boot-f02ff60da1a862bb4eb0631cb9b7e527ffa1f32e.zip
Workaround loop-aes-utils losetup incompatibility
Pass -r option to losetup when setting up loop device for root image so that readonly files can be set up as well.
-rwxr-xr-xscripts/live4
-rw-r--r--scripts/live-helpers6
2 files changed, 8 insertions, 2 deletions
diff --git a/scripts/live b/scripts/live
index 3428cca..0d84533 100755
--- a/scripts/live
+++ b/scripts/live
@@ -498,7 +498,7 @@ get_backing_device ()
{
case "${1}" in
*.squashfs|*.ext2|*.ext3|*.jffs2)
- echo $(setup_loop "${1}" "loop" "/sys/block/loop*" '0' "${LIVE_MEDIA_ENCRYPTION}")
+ echo $(setup_loop "${1}" "loop" "/sys/block/loop*" '0' "${LIVE_MEDIA_ENCRYPTION}" "${2}")
;;
*.dir)
@@ -965,7 +965,7 @@ setup_unionfs ()
rofslist="${image} ${rofslist}"
elif [ -f "${image}" ]
then
- backdev=$(get_backing_device "${image}")
+ backdev=$(get_backing_device "${image}" "-r")
fstype=$(get_fstype "${backdev}")
if [ "${fstype}" = "unknown" ]
diff --git a/scripts/live-helpers b/scripts/live-helpers
index cc73aa3..02c3e55 100644
--- a/scripts/live-helpers
+++ b/scripts/live-helpers
@@ -167,6 +167,7 @@ setup_loop ()
local pattern=${3}
local offset=${4}
local encryption=${5}
+ local readonly=${6}
modprobe -q -b "${module}"
udevsettle
@@ -178,6 +179,11 @@ setup_loop ()
dev=$(sys2dev "${loopdev}")
options=''
+ if [ -n ${readonly} ]
+ then
+ options="${options} -r"
+ fi
+
if [ 0 -lt "${offset}" ]
then
options="${options} -o ${offset}"