init-live.sh: avoid duplicate mount points for the same filesystem

A live system had duplicate mount points for the same filesystem
in the output of 'mount' command. That was because we didn't handle
the temporary mounts properly before switch_root.

This patch fixes this problem by moving the mount points of some
filesystems to the corresponding directories in the real root filesystem.

[YOCTO #3155]

(From OE-Core rev: 050a745413f8bb26212b84da391e0f7665f77728)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Chen Qi 2012-12-31 15:55:20 +08:00 committed by Richard Purdie
parent 9f5e0b8fec
commit 14649c0035
1 changed files with 5 additions and 4 deletions

View File

@ -59,10 +59,11 @@ read_args() {
boot_live_root() {
killall udevd 2>/dev/null
# use devtmpfs if available
if grep -q devtmpfs /proc/filesystems; then
mount -t devtmpfs devtmpfs $ROOT_MOUNT/dev
fi
# Move the mount points of some filesystems over to
# the corresponding directories under the real root filesystem.
mount -n --move /proc ${ROOT_MOUNT}/proc
mount -n --move /sys ${ROOT_MOUNT}/sys
mount -n --move /dev ${ROOT_MOUNT}/dev
cd $ROOT_MOUNT
exec switch_root -c /dev/console $ROOT_MOUNT /sbin/init