#! /bin/sh # # Author: Rolf Eike Beer # derived from original RedHat udev init script # based on the SuSE 9.0 template (c) 1995-2002 SuSE Linux AG # # /etc/init.d/udev # and its symbolic link # /(usr/)sbin/rcudev # # System startup script for udev # # LSB compatible service control script; see http://www.linuxbase.org/spec/ # ### BEGIN INIT INFO # Provides: udev # Required-Start: # Required-Stop: # Default-Start: 1 2 3 5 # Default-Stop: 0 6 # Short-Description: manage user-space device nodes in /udev # Description: Start udev to create the device files for all # devices already present in system when script is # called. All other devices files will be automatically # created when udev is called via /sbin/hotplug. # Requires at least a kernel 2.6 to work properly. ### END INIT INFO # # Note on script names: # http://www.linuxbase.org/spec/refspecs/LSB_1.2.0/gLSB/scrptnames.html # A registry has been set up to manage the init script namespace. # http://www.lanana.org/ # Please use the names already registered or register one or use a # vendor prefix. # Check for missing binaries (stale symlinks should not happen) UDEV_BIN=/sbin/udev test -x $UDEV_BIN || exit 5 # Check for existence of needed config file and read it UDEV_CONFIG=/etc/udev/udev.conf test -r $UDEV_CONFIG || exit 6 . $UDEV_CONFIG # Directory where sysfs is mounted SYSFS_DIR=/sys # Source LSB init functions . /lib/lsb/init-functions case "$1" in start) if [ ! -d $SYSFS_DIR ]; then log_failure_msg "${0}: SYSFS_DIR \"$SYSFS_DIR\" not found" exit 1 fi if [ ! -d $udev_root ]; then mkdir $udev_root || exit 4 fi # propogate /udev from /sys - we only need this while we do not # have initramfs and an early user-space with which to do early # device bring up echo -n "Creating initial udev device nodes: " export ACTION=add udevstart log_success_msg ;; stop) # nothing to do here echo -n "Stopping udev: " log_success_msg ;; restart) $0 stop $0 start exit $? ;; force-reload) echo -n "Reload udev " $0 stop && $0 start exit $? ;; reload) exit 3 ;; status) echo -n "Checking for udev root directory: " if [ -d $udev_root ]; then log_success_msg found else log_warning_msg "not found" exit 3 fi ;; *) echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" exit 1 ;; esac