[OE-core] [PATCH 1/1] initscripts: update populate-volatile.sh

Kai Kang kai.kang at windriver.com
Thu Jun 19 07:31:52 UTC 2014


If a partition such as /tmp mounted on a volatile directory which create
by script populate-volatile.sh from initscripts, it will show errors.

In /var/log/boot, error message:

Thu Jun 19 05:39:09 2014: bootlogd.
Thu Jun 19 05:39:10 2014: rm: cannot remove '/tmp': Device or resource busy

Check volatile directories and if it is be mounted then don't force make
it as a link.

Signed-off-by: Kai Kang <kai.kang at windriver.com>
---
 .../initscripts/initscripts-1.0/populate-volatile.sh           | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh
index e707b20..904037e 100755
--- a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh
+++ b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh
@@ -72,10 +72,12 @@ link_file() {
 	if [ -L \"$2\" ]; then
 		[ \"\$(readlink -f \"$2\")\" != \"\$(readlink -f \"$1\")\" ] && { rm -f \"$2\"; ln -sf \"$1\" \"$2\"; };
 	elif [ -d \"$2\" ]; then
-		cp -a $2/* $1 2>/dev/null;
-		cp -a $2/.[!.]* $1 2>/dev/null;
-		rm -rf \"$2\";
-		ln -sf \"$1\" \"$2\";
+		if awk '\$2 == \"$2\" {exit 1}' /proc/mounts; then
+			cp -a $2/* $1 2>/dev/null;
+			cp -a $2/.[!.]* $1 2>/dev/null;
+			rm -rf \"$2\";
+			ln -sf \"$1\" \"$2\";
+		fi
 	else
 		ln -sf \"$1\" \"$2\";
 	fi
-- 
1.9.1




More information about the Openembedded-core mailing list