openwrtv4/package/base-files/files/lib/preinit/20_device_fs_mount
Mirko Vogt 439a869090 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'.

SVN-Revision: 34792
2012-12-19 16:07:46 +00:00

37 lines
821 B
Bash

#!/bin/sh
# Copyright (C) 2006 OpenWrt.org
# Copyright (C) 2010 Vertical Communications
do_move_devtmpfs() {
local mnt="$(grep devtmpfs /proc/mounts)"
mnt="${mnt#* }"; mnt="${mnt%% *}"
[ "$mnt" = "/dev" ] || mount -o noatime,move "$mnt" /dev
}
do_mount_devfs() {
mount -o noatime -t devfs devfs /dev
}
do_mount_hotplug() {
mount -t tmpfs -o noatime,mode=0755,size=512K tmpfs /dev
}
do_mount_udev() {
mount -n -t tmpfs -o noatime,mode=0755 udev /dev
}
choose_device_fs() {
if grep -q devtmpfs /proc/mounts; then
do_move_devtmpfs
elif grep -q devfs /proc/filesystems; then
do_mount_devfs
elif [ -x /sbin/hotplug2 ]; then
do_mount_hotplug
elif [ -x /sbin/udevd ]; then
do_mount_udev
fi
}
boot_hook_add preinit_essential choose_device_fs