diff options
| author | Tails developers <amnesia@boum.org> | 2012-02-07 18:05:42 +0100 |
|---|---|---|
| committer | Daniel Baumann <daniel@debian.org> | 2012-04-01 22:03:16 +0200 |
| commit | baa35e3dbde1d68bedca73fa03425d0a7d8b374c (patch) | |
| tree | 321c5818ae5b3edd8e511f2e0e7eb91811c42219 /scripts | |
| parent | 2fc36d846b3653e698a6ad7d6ea4a2ba1cb16db8 (diff) | |
| download | live-boot-baa35e3dbde1d68bedca73fa03425d0a7d8b374c.tar.gz live-boot-baa35e3dbde1d68bedca73fa03425d0a7d8b374c.zip | |
Separate overlay labels for full and custom persistence.
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.
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/live | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/scripts/live b/scripts/live index 561c0e0..e80c470 100755 --- a/scripts/live +++ b/scripts/live @@ -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" @@ -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=}" ;; @@ -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 @@ -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\>" @@ -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" @@ -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} |
