Skip to content

Commit

Permalink
Separate overlay labels for full and custom persistence.
Browse files Browse the repository at this point in the history
Full root persistence through overlays is specified with "full-ov",
and custom persistent mounts with "custom-ov". Previously they used
the same label ("live-rw") and the existence of live.persist
determined whether it should be used for full persistence or custom
mounts. That was a bit dangerous since a misspelled live.persist could
cause data loss etc.
  • Loading branch information
Tails developers authored and daniel-baumann committed Apr 1, 2012
1 parent 2fc36d8 commit baa35e3
Showing 1 changed file with 17 additions and 12 deletions.
29 changes: 17 additions & 12 deletions scripts/live
Expand Up @@ -11,7 +11,8 @@ mountpoint="/live/image"
alt_mountpoint="/media"
LIVE_MEDIA_PATH="live"

root_persistence="live-rw"
root_overlay_label="full-ov"
custom_overlay_label="custom-ov"
root_snapshot_label="live-sn"
home_snapshot_label="home-sn"
persistence_list="live.persist"
Expand Down Expand Up @@ -273,8 +274,8 @@ Arguments ()
;;

persistent-subtext=*)
root_persistence="${root_persistence}-${ARGUMENT#persistent-subtext=}"
home_persistence="${home_persistence}-${ARGUMENT#persistent-subtext=}"
root_overlay_label="${root_overlay_label}-${ARGUMENT#persistent-subtext=}"
custom_overlay_label="${custom_overlay_label}-${ARGUMENT#persistent-subtext=}"
root_snapshot_label="${root_snapshot_label}-${ARGUMENT#persistent-subtext=}"
home_snapshot_label="${home_snapshot_label}-${ARGUMENT#persistent-subtext=}"
;;
Expand Down Expand Up @@ -1360,7 +1361,7 @@ setup_unionfs ()

mkdir -p /cow

# Looking for "${root_persistence}" device or file
# Looking for persistent devices or files
if [ -n "${PERSISTENT}" ] && [ -z "${NOPERSISTENT}" ]
then

Expand Down Expand Up @@ -1405,7 +1406,7 @@ setup_unionfs ()

if echo ${PERSISTENT_METHOD} | grep -qe "\<overlay\>"
then
overlays="${root_persistence}"
overlays="${root_overlay_label} ${custom_overlay_label}"
fi

if echo ${PERSISTENT_METHOD} | grep -qe "\<snapshot\>"
Expand All @@ -1427,23 +1428,24 @@ setup_unionfs ()
# ext2|ext3|ext4|jffs2 snapshot types.
home_snapdata="${media#*=}"
;;
*)
${root_overlay_label}=*)
device="${media#*=}"
root_overlay_device="${device}"
;;
${custom_overlay_label}=*)
device="${media#*=}"
overlay_devices="${overlay_devices} ${device}"
;;
esac
done

if [ -b "${cowprobe}" ] || [ -b "${homecow}" ]
if [ -b "${root_overlay_device}" ]
then
PERSISTENCE_IS_ON="1"
export PERSISTENCE_IS_ON
fi

if [ -b "${cowprobe}" ]
then
cowdevice=${cowprobe}
cow_fstype=$(get_fstype "${cowprobe}")
cowdevice=${root_overlay_device}
cow_fstype=$(get_fstype "${root_overlay_device}")
if [ -z "${PERSISTENT_READONLY}" ]
then
cow_mountopt="rw,noatime"
Expand Down Expand Up @@ -1776,6 +1778,9 @@ setup_unionfs ()
then
link_files "${links_source}" "${links_dest}" "${rootmnt}"
fi

PERSISTENCE_IS_ON="1"
export PERSISTENCE_IS_ON
done < ${custom_mounts}
rm -f ${bindings}

Expand Down

0 comments on commit baa35e3

Please sign in to comment.