base-files: fix mount-utils incompatibility

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>

SVN-Revision: 39169
This commit is contained in:
John Crispin
2013-12-27 21:15:09 +00:00
parent 9715b61b3c
commit 834204bda6
4 changed files with 25 additions and 25 deletions

View File

@@ -568,12 +568,12 @@ dupe() { # <new_root> <old_root>
}
pivot() { # <new_root> <old_root>
mount -o noatime,move /proc $1/proc && \
/bin/mount -o noatime,move /proc $1/proc && \
pivot_root $1 $1$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>&-
/bin/mount -o noatime,move $2/dev /dev
/bin/mount -o noatime,move $2/tmp /tmp
/bin/mount -o noatime,move $2/sys /sys 2>&-
/bin/mount -o noatime,move $2/overlay /overlay 2>&-
return 0
}
}
@@ -582,16 +582,16 @@ fopivot() { # <rw_root> <ro_root> <dupe?>
root=$1
{
if grep -q overlay /proc/filesystems; then
mount -o noatime,lowerdir=/,upperdir=$1 -t overlayfs "overlayfs:$1" /mnt && root=/mnt
/bin/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 noatime,base=/,sto=$1 "mini_fo:$1" /mnt 2>&- && root=/mnt
/bin/mount -t mini_fo -o noatime,base=/,sto=$1 "mini_fo:$1" /mnt 2>&- && root=/mnt
else
mount --bind -o noatime / /mnt
mount --bind -o noatime,union "$1" /mnt && root=/mnt
/bin/mount --bind -o noatime / /mnt
/bin/mount --bind -o noatime,union "$1" /mnt && root=/mnt
fi
} || {
[ "$3" = "1" ] && {
mount | grep "on $1 type" 2>&- 1>&- || mount -o noatime,bind $1 $1
/bin/mount | grep "on $1 type" 2>&- 1>&- || /bin/mount -o noatime,bind $1 $1
dupe $1 $rom
}
}
@@ -600,7 +600,7 @@ fopivot() { # <rw_root> <ro_root> <dupe?>
ramoverlay() {
mkdir -p /tmp/root
mount -t tmpfs -o noatime,mode=0755 root /tmp/root
/bin/mount -t tmpfs -o noatime,mode=0755 root /tmp/root
fopivot /tmp/root /rom 1
}