1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-04-21 12:27:27 +03:00

Do not overload mount-call - trying to reduce confusion

The behaviour of calling 'mount' differed depending on whether it called
the busybox-mount, the mount of util-linux, the mount defined in
/lib/functions.sh and /lib/functions/boot.sh

/etc/preinit even included /lib/functions.sh and /lib/functions/boot.sh,
both re-defining 'mount'.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34792 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
mirko
2012-12-19 16:07:46 +00:00
parent c577d7187d
commit 53edda1e36
19 changed files with 50 additions and 59 deletions

View File

@@ -2,10 +2,6 @@
# Copyright (C) 2006-2010 OpenWrt.org
# Copyright (C) 2010 Vertical Communications
mount() {
/bin/busybox mount -o noatime "$@"
}
boot_hook_splice_start() {
export -n PI_HOOK_SPLICE=1
}
@@ -112,12 +108,12 @@ dupe() { # <new_root> <old_root>
}
pivot() { # <new_root> <old_root>
mount -o move /proc $1/proc && \
mount -o noatime,move /proc $1/proc && \
pivot_root $1 $1$2 && {
mount -o move $2/dev /dev
mount -o move $2/tmp /tmp
mount -o move $2/sys /sys 2>&-
mount -o move $2/overlay /overlay 2>&-
mount -o noatime,move $2/dev /dev
mount -o noatime,move $2/tmp /tmp
mount -o noatime,move $2/sys /sys 2>&-
mount -o noatime,move $2/overlay /overlay 2>&-
return 0
}
}
@@ -126,16 +122,16 @@ fopivot() { # <rw_root> <ro_root> <dupe?>
root=$1
{
if grep -q overlay /proc/filesystems; then
mount -t overlayfs -olowerdir=/,upperdir=$1 "overlayfs:$1" /mnt && root=/mnt
mount -o noatime,lowerdir=/,upperdir=$1 -t overlayfs "overlayfs:$1" /mnt && root=/mnt
elif grep -q mini_fo /proc/filesystems; then
mount -t mini_fo -o base=/,sto=$1 "mini_fo:$1" /mnt 2>&- && root=/mnt
mount -t mini_fo -o noatime,base=/,sto=$1 "mini_fo:$1" /mnt 2>&- && root=/mnt
else
mount --bind / /mnt
mount --bind -o union "$1" /mnt && root=/mnt
mount --bind -o noatime / /mnt
mount --bind -o noatime,union "$1" /mnt && root=/mnt
fi
} || {
[ "$3" = "1" ] && {
mount | grep "on $1 type" 2>&- 1>&- || mount -o bind $1 $1
mount | grep "on $1 type" 2>&- 1>&- || mount -o noatime,bind $1 $1
dupe $1 $rom
}
}
@@ -144,7 +140,7 @@ fopivot() { # <rw_root> <ro_root> <dupe?>
ramoverlay() {
mkdir -p /tmp/root
mount -t tmpfs -o mode=0755 root /tmp/root
mount -t tmpfs -o noatime,mode=0755 root /tmp/root
fopivot /tmp/root /rom 1
}