home *** CD-ROM | disk | FTP | other *** search
/ chilidog.highland.cc.ks.us / chilidog.highland.cc.ks.us.zip / chilidog.highland.cc.ks.us / backup / bradford.20120521.etc.tar.gz / bradford.20120521.etc.tar / etc / init.d / boot.udev < prev    next >
Text File  |  2006-11-25  |  2KB  |  96 lines

  1. #!/bin/sh
  2. #
  3. ### BEGIN INIT INFO
  4. # Provides:          boot.udev
  5. # Should-Start:      boot.preload_early
  6. # Default-Start:     B
  7. # Default-Stop:
  8. # Description:       Start udevd to manage /dev and kernel device events.
  9. ### END INIT INFO
  10.  
  11. . /etc/rc.status
  12.  
  13. if [ -f /etc/sysconfig/udev ]; then
  14.   . /etc/sysconfig/udev
  15.  
  16.   # export relevant variables
  17.   export UDEVD_MAX_CHILDS
  18.   export UDEVD_MAX_CHILDS_RUNNING
  19. fi
  20.  
  21. PATH="/sbin:/bin"
  22. DAEMON=/sbin/udevd
  23. udevd_args="--daemon"
  24.  
  25. case "$1" in
  26.     start)
  27.     checkproc $DAEMON
  28.     if [ $? -eq 0 ]; then
  29.         echo -n "udevd already running"
  30.         rc_status -v
  31.         rc_exit
  32.     fi
  33.  
  34.     # disable uevent helper, udevd listens to netlink
  35.     echo "" > /sys/kernel/uevent_helper
  36.  
  37.     # start udevd (needs to block until we are initialized)
  38.     echo -n "Starting udevd "
  39.     rm -rf /dev/.udev
  40.     $DAEMON $udevd_args
  41.  
  42.     # cleanup stuff
  43.     rm -rf /events/*
  44.  
  45.     # run static device configurations
  46.     HWCFG_STUB=/etc/sysconfig/hardware/hwcfg
  47.     for cfg in ${HWCFG_STUB}-static*; do
  48.         if [ -f $cfg ]; then
  49.         /sbin/hwup ${cfg#$HWCFG_STUB-} ${cfg#$HWCFG_STUB-static-} -o auto > /dev/null 2>&1
  50.         fi
  51.     done
  52.  
  53.     # trigger events for all devices
  54.     /sbin/udevtrigger
  55.  
  56.     # wait for events to finish
  57.     /sbin/udevsettle --timeout=180
  58.     rc_status -v
  59.     ;;
  60.     stop)
  61.     echo -n "Stopping udevd:"
  62.     killproc $DAEMON
  63.     rc_status -v
  64.     ;;
  65.     restart)
  66.     echo -n "Restarting udevd:"
  67.     killproc $DAEMON
  68.     $DAEMON $udevd_args
  69.     rc_status -v
  70.     ;;
  71.     status)
  72.     echo -n "Checking for udevd:"
  73.     checkproc /sbin/udevd
  74.     rc_status -v
  75.     ;;
  76.     reload)
  77.     echo -n "Reloading udev rules:"
  78.     udevcontrol reload_rules
  79.     cp --preserve=all --recursive --update /lib/udev/devices/* /dev
  80.     rc_status -v
  81.     ;;
  82.     force-reload)
  83.     echo -n "Updating all available device nodes in /dev: "
  84.     udevcontrol reload_rules
  85.     rm -rf /dev/.udev /dev/disk
  86.     cp --preserve=all --recursive --update /lib/udev/devices/* /dev
  87.     /sbin/udevtrigger
  88.     rc_status -v
  89.     ;;
  90.     *)
  91.     echo "Usage: $0 {start|stop|restart|status|reload|force-reload}"
  92.     exit 1
  93.     ;;
  94. esac
  95. rc_exit
  96.