86 lines
1.7 KiB
Plaintext
86 lines
1.7 KiB
Plaintext
|
#! /bin/bash
|
||
|
#
|
||
|
# udev init script to setup /udev
|
||
|
#
|
||
|
# chkconfig: 2345 20 80
|
||
|
# description: manage user-space device nodes in /udev
|
||
|
|
||
|
. /etc/init.d/functions
|
||
|
|
||
|
. /etc/udev/udev.conf
|
||
|
|
||
|
prog=udev
|
||
|
sysfs_dir=/sys
|
||
|
bin=/sbin/udev
|
||
|
udevd=/sbin/udevd
|
||
|
udev_root=/dev
|
||
|
|
||
|
remove_extra_nodes () {
|
||
|
# get rid of the extra nodes created in make_extra_nodes()
|
||
|
rm $udev_root/fd
|
||
|
rm $udev_root/stdin
|
||
|
rm $udev_root/stdout
|
||
|
rm $udev_root/stderr
|
||
|
rm $udev_root/core
|
||
|
#rm $udev_root/sndstat
|
||
|
}
|
||
|
|
||
|
case "$1" in
|
||
|
start)
|
||
|
# creating /var/lock/subsys if it doesn't exit
|
||
|
if [ ! -d /var/lock/subsys ]; then
|
||
|
mkdir -p /var/lock/subsys
|
||
|
fi
|
||
|
|
||
|
# don't use udev if sysfs is not mounted.
|
||
|
if [ ! -d $sysfs_dir/block ]; then
|
||
|
exit 1
|
||
|
fi
|
||
|
if [ ! -d $udev_root ]; then
|
||
|
mkdir $udev_root
|
||
|
fi
|
||
|
|
||
|
#check if /dev ist mounted tmpfs -> else mount tmpfs here
|
||
|
( mount | grep "\/dev " | grep tmpfs ) >/dev/null 2>&1 || mount -t tmpfs none /dev
|
||
|
|
||
|
# 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
|
||
|
export ACTION=add
|
||
|
echo -n "Creating initial udev device nodes:"
|
||
|
loadproc udevstart
|
||
|
|
||
|
# We want to start udevd ourselves if it isn't already running. This
|
||
|
# lets udevd run at a sane nice level...
|
||
|
loadproc $udevd --daemon
|
||
|
touch /var/lock/subsys/udev
|
||
|
;;
|
||
|
stop)
|
||
|
# be careful
|
||
|
echo -n $"Removing udev device nodes: "
|
||
|
export ACTION=remove
|
||
|
killproc $udevd
|
||
|
rm -f /var/lock/subsys/udev
|
||
|
;;
|
||
|
status)
|
||
|
if [ -f /var/lock/subsys/udev ]; then
|
||
|
echo $"$prog has run"
|
||
|
exit 0
|
||
|
fi
|
||
|
echo $"$prog is stopped"
|
||
|
exit 3
|
||
|
;;
|
||
|
restart)
|
||
|
$0 stop
|
||
|
$0 start
|
||
|
;;
|
||
|
reload)
|
||
|
# nothing to do here
|
||
|
;;
|
||
|
*)
|
||
|
echo "Usage: $0 {start|stop|status|restart}"
|
||
|
exit 1
|
||
|
esac
|
||
|
|
||
|
exit 0
|