diff options
author | Felix Fietkau <nbd@openwrt.org> | 2010-01-25 17:11:17 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2010-01-25 17:11:17 +0000 |
commit | 56bc02a305ae8d8a7e927622d924cdab56d4f012 (patch) | |
tree | 079702f93a3ad4420b99f31bc99c1b9b2b9a8a08 /package/base-files/files/lib/preinit/30_device_fs_daemons | |
parent | 35170c48928e99dda69d46274c2749bc9bff972d (diff) | |
download | master-31e0f0ae-56bc02a305ae8d8a7e927622d924cdab56d4f012.tar.gz master-31e0f0ae-56bc02a305ae8d8a7e927622d924cdab56d4f012.tar.bz2 master-31e0f0ae-56bc02a305ae8d8a7e927622d924cdab56d4f012.zip |
add preinit modularization work by Daniel Dickinson (cshore)
SVN-Revision: 19331
Diffstat (limited to 'package/base-files/files/lib/preinit/30_device_fs_daemons')
-rw-r--r-- | package/base-files/files/lib/preinit/30_device_fs_daemons | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/package/base-files/files/lib/preinit/30_device_fs_daemons b/package/base-files/files/lib/preinit/30_device_fs_daemons new file mode 100644 index 0000000000..5a3aaf3d64 --- /dev/null +++ b/package/base-files/files/lib/preinit/30_device_fs_daemons @@ -0,0 +1,36 @@ +#!/bin/sh +# Copyright (C) 2006 OpenWrt.org +# Copyright (C) 2010 Vertical Communications + +init_devfs() { + HOTPLUG=/sbin/hotplug-call +} + +init_hotplug2() { + [ -c /dev/console ] || mknod /dev/console c 5 1 + /sbin/hotplug2 --set-worker /lib/hotplug2/worker_fork.so --set-rules-file /etc/hotplug2-init.rules --no-persistent --set-coldplug-cmd /sbin/udevtrigger + /sbin/hotplug2 --set-worker /lib/hotplug2/worker_fork.so --set-rules-file /etc/hotplug2-init.rules --persistent & +} + +init_udev() { + [ -d /lib/udev/devices ] && cp -af /lib/udev/devices/* /dev/ + [ -c /dev/console ] || mknod -m 0600 /dev/console c 5 1 + [ -c /dev/null ] || mknod -m 0666 /dev/null c 1 3 + /sbin/udevd --daemon --resolve-names=never + /sbin/udevadm trigger + /sbin/udevadm settle +} + +init_device_fs() { + HOTPLUG= + if grep devfs /proc/filesystems > /dev/null; then + init_devfs + elif [ -x /sbin/hotplug2 ]; then + init_hotplug2 + elif [ -x /sbin/udevd ]; then + init_udev + fi +} + +boot_hook_add preinit_essential init_device_fs + |