[SCM] live-boot branch, debian-next, updated. debian/3.0_a25-1-70-ga39a167

Daniel Baumann daniel at debian.org
Thu Apr 5 06:00:33 UTC 2012


The following commit has been merged in the debian-next branch:
commit bfec46ce25357e087378ca220b852aca1bb83e09
Author: Tails developers <amnesia at boum.org>
Date:   Tue Feb 14 16:48:52 2012 +0100

    Handle already mounted devices and closing of unused luks devices better.

diff --git a/scripts/live-helpers b/scripts/live-helpers
index f8f635c..76b94e0 100644
--- a/scripts/live-helpers
+++ b/scripts/live-helpers
@@ -1162,23 +1162,38 @@ get_custom_mounts () {
 		then
 			continue
 		fi
+
 		local device_name="$(basename ${device})"
-		local backing="${persistent_backing}/${device_name}"
-		mkdir -p "${backing}"
-		local device_fstype="$(get_fstype ${device})"
-		if [ -z "${PERSISTENT_READONLY}" ]
+		local device_used=""
+		# $device may already have been mounted by
+		# probe_for_file_name() in find_persistent_media() ...
+		local backing=$(where_is_mounted ${device})
+		if [ -z "${backing}" ]
 		then
-			device_mount_opts="rw,noatime"
-		else
-			device_mount_opts="ro,noatime"
+			# ... otherwise we mount it now
+			backing="${persistent_backing}/${device_name}"
+			mkdir -p "${backing}"
+			local device_fstype="$(get_fstype ${device})"
+			if [ -z "${PERSISTENT_READONLY}" ]
+			then
+				device_mount_opts="rw,noatime"
+			else
+				device_mount_opts="ro,noatime"
+			fi
+			if ! mount -t "${device_fstype}" -o "${device_mount_opts}" "${device}" "${backing}" >/dev/null 2>&1
+			then
+				log_warning_msg "Could not mount persistent media ${device} (${device_fstype})"
+			fi
 		fi
-		local device_used=""
-		mount -t "${device_fstype}" -o "${device_mount_opts}" "${device}" "${backing}"
 		local include_list="${backing}/${persistence_list}"
 		if [ ! -r "${include_list}" ]
 		then
-			umount "${backing}"
-			rmdir "${backing}"
+			umount "${backing}" >/dev/null 2>&1
+			rmdir "${backing}" >/dev/null 2>&1
+			if /sbin/cryptsetup status ${device_name} >/dev/null 2>&1
+			then
+				/sbin/cryptsetup luksClose "${device_name}"
+			fi
 			continue
 		fi
 

-- 
live-boot



More information about the debian-live-changes mailing list