[SCM] Debian Live initramfs hook branch, master, updated. 1.156.1-1-11-gaec85a0

Daniel Baumann daniel at debian.org
Thu Mar 12 08:06:37 UTC 2009


The following commit has been merged in the master branch:
commit 6b5be4219e213f5238e73a591a0672deb30d406a
Author: Daniel Baumann <daniel at debian.org>
Date:   Thu Mar 12 08:07:48 2009 +0100

    Also allowing to use the removable keyword for specifying a live media.

diff --git a/manpages/live-initramfs.en.7.txt b/manpages/live-initramfs.en.7.txt
index c1dcd5b..d6a7d21 100644
--- a/manpages/live-initramfs.en.7.txt
+++ b/manpages/live-initramfs.en.7.txt
@@ -114,6 +114,10 @@ to find this device for the "/live" directory where the read-only root
 filesystem should reside. If it did not find something usable, the normal scan
 for block devices is performed.
 
+Instead of specifing an actual device name, the keyword 'removable' can be used
+to limit the search of acceptable live media to removable type only. Note that
+cdrom devices are not removable, but e.g. usb mass storage is.
+
   {live-media-encryption|encryption}=**TYPE**::
 
 live-initramfs will mount the encrypted rootfs TYPE, asking the passphrase,
diff --git a/scripts/live b/scripts/live
index 5d5b978..d7c2347 100755
--- a/scripts/live
+++ b/scripts/live
@@ -1401,13 +1401,33 @@ find_livefs ()
 	fi
 
 	# first look at the one specified in the command line
-	if [ ! -z "${LIVE_MEDIA}" ]
-	then
-		if check_dev "null" "${LIVE_MEDIA}" "skip_uuid_check"
-		then
-			return 0
-		fi
-	fi
+	case "${LIVE_MEDIA}" in
+		removable)
+			for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -vE "/(loop|ram|dm-|fd)")
+			do
+				if [ "$(cat ${sysblock}/removable)" = "1" ]
+				then
+					for dev in $(subdevices "${sysblock}")
+					do
+						if check_dev "${dev}"
+						then
+							return 0
+						fi
+					done
+				fi
+			done
+			;;
+
+		*)
+			if [ ! -z "${LIVE_MEDIA}" ]
+			then
+				if check_dev "null" "${LIVE_MEDIA}" "skip_uuid_check"
+				then
+					return 0
+				fi
+			fi
+			;;
+	esac
 
 	# or do the scan of block devices
 	for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -vE "/(loop|ram|dm-|fd)")

-- 
Debian Live initramfs hook



More information about the debian-live-changes mailing list