diff options
Diffstat (limited to 'meta/packages/udev/udev-141/init')
| -rw-r--r-- | meta/packages/udev/udev-141/init | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/meta/packages/udev/udev-141/init b/meta/packages/udev/udev-141/init new file mode 100644 index 0000000000..0e1a9d96e6 --- /dev/null +++ b/meta/packages/udev/udev-141/init | |||
| @@ -0,0 +1,60 @@ | |||
| 1 | #!/bin/sh -e | ||
| 2 | |||
| 3 | ### BEGIN INIT INFO | ||
| 4 | # Provides: udev | ||
| 5 | # Required-Start: mountvirtfs | ||
| 6 | # Required-Stop: | ||
| 7 | # Default-Start: S | ||
| 8 | # Default-Stop: | ||
| 9 | # Short-Description: Start udevd, populate /dev and load drivers. | ||
| 10 | ### END INIT INFO | ||
| 11 | |||
| 12 | export TZ=/etc/localtime | ||
| 13 | |||
| 14 | [ -d /sys/class ] || exit 1 | ||
| 15 | [ -r /proc/mounts ] || exit 1 | ||
| 16 | [ -x /sbin/udevd ] || exit 1 | ||
| 17 | [ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf | ||
| 18 | |||
| 19 | kill_udevd() { | ||
| 20 | if [ -x /sbin/pidof ]; then | ||
| 21 | pid=`/sbin/pidof -x udevd` | ||
| 22 | [ -n "$pid" ] && kill $pid | ||
| 23 | fi | ||
| 24 | } | ||
| 25 | |||
| 26 | export ACTION=add | ||
| 27 | # propagate /dev from /sys | ||
| 28 | echo -n "Starting udev" | ||
| 29 | |||
| 30 | # mount the tmpfs on /dev, if not already done | ||
| 31 | LANG=C awk "\$2 == \"/dev\" && \$4 == \"tmpfs\" { exit 1 }" /proc/mounts && { | ||
| 32 | mount -n -o mode=0755 -t tmpfs none "/dev" | ||
| 33 | mkdir -m 0755 /dev/pts | ||
| 34 | mkdir -m 0755 /dev/shm | ||
| 35 | } | ||
| 36 | |||
| 37 | if [ -e /etc/dev.tar ]; then | ||
| 38 | (cd /; tar xf /etc/dev.tar) | ||
| 39 | not_first_boot=1 | ||
| 40 | fi | ||
| 41 | |||
| 42 | # make_extra_nodes | ||
| 43 | kill_udevd > "/dev/null" 2>&1 | ||
| 44 | |||
| 45 | # trigger the sorted events | ||
| 46 | echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug | ||
| 47 | /sbin/udevd -d | ||
| 48 | |||
| 49 | /sbin/udevadm control --env=STARTUP=1 | ||
| 50 | if [ "$not_first_boot" != "" ];then | ||
| 51 | /sbin/udevadm trigger --subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon --subsystem-nomatch=pci_bus --subsystem-nomatch=graphics --subsystem-nomatch=backlight --subsystem-nomatch=video4linux --subsystem-nomatch=platform | ||
| 52 | (/sbin/udevadm settle --timeout=3; /sbin/udevadm control --env=STARTUP=)& | ||
| 53 | else | ||
| 54 | /sbin/udevadm trigger | ||
| 55 | /sbin/udevadm settle | ||
| 56 | (cd /; tar cf /etc/dev.tar /dev) | ||
| 57 | fi | ||
| 58 | |||
| 59 | echo | ||
| 60 | exit 0 | ||
