[SCM] live-boot branch, debian, updated. debian/3.0_a25-1-72-gfc7a680

Daniel Baumann daniel at debian.org
Thu Apr 5 06:21:42 UTC 2012


The following commit has been merged in the debian branch:
commit 6d0cc254c6b9c37c674db96017752e5f2b3b9005
Author: Tails developers <amnesia at boum.org>
Date:   Sat Mar 24 19:29:36 2012 +0100

    Adding functions equivalent to chmod/chown --reference.
    
    This option is apparently not present in busybox.

diff --git a/scripts/live-helpers b/scripts/live-helpers
index ce28742..860e6ff 100644
--- a/scripts/live-helpers
+++ b/scripts/live-helpers
@@ -530,6 +530,24 @@ what_is_mounted_on ()
 	grep -m1 "^[^ ]\+ ${dir} " /proc/mounts | cut -d' ' -f1
 }
 
+chown_ref ()
+{
+	local reference="${1}"
+	shift
+	local targets=${@}
+	local owner=$(stat -c %u:%g "${reference}")
+	chown -h ${owner} ${targets}
+}
+
+chmod_ref ()
+{
+	local reference="${1}"
+	shift
+	local targets=${@}
+	local rights=$(stat -c %a "${reference}")
+	chmod ${rights} ${targets}
+}
+
 lastline ()
 {
 	while read lines
@@ -1164,8 +1182,8 @@ link_files ()
 			then
 				mkdir -p "${dest}"
 				prev="$(dirname "${dest}")"
-				chown --reference "${prev}" "${dest}"
-				chmod --reference "${prev}" "${dest}"
+				chown_ref "${prev}" "${dest}"
+				chmod_ref "${prev}" "${dest}"
 			fi
 			link_files "${src}" "${dest}" "${src_mask}"
 		else
@@ -1433,8 +1451,8 @@ activate_custom_mounts ()
 				# unions and don't need to be bootstrapped
 				# linkfiles dirs can't be bootstrapped in a sensible way
 				mkdir -p "${source}"
-				chown --reference "${dest}" "${source}"
-				chmod --reference "${dest}" "${source}"
+				chown_ref "${dest}" "${source}"
+				chmod_ref "${dest}" "${source}"
 			else
 				# ensure that $dest is not copied *into* $source
 				mkdir -p "$(dirname ${source})"
@@ -1494,8 +1512,8 @@ activate_custom_mounts ()
 				rm -rf "${cow_dir}"
 			fi
 			mkdir -p ${cow_dir}
-			chown --reference "${source}" "${cow_dir}"
-			chmod --reference "${source}" "${cow_dir}"
+			chown_ref "${source}" "${cow_dir}"
+			chmod_ref "${source}" "${cow_dir}"
 			do_union ${dest} ${cow_dir} ${source} ${rofs_dest_backing}
 		fi
 

-- 
live-boot



More information about the debian-live-changes mailing list