You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.2 KiB
70 lines
1.2 KiB
7 years ago
|
# functions that are used by init scripts...
|
||
|
|
||
|
. /etc/init.d/globals
|
||
|
|
||
|
run_initscripts() {
|
||
|
if [ "x$1" == xstop ]; then
|
||
|
action="stop"
|
||
|
doing="stopping"
|
||
|
files="/etc/init.d/K[0-9][0-9]* /var/etc/init.d/K[0-9][0-9]*"
|
||
|
else
|
||
|
action="start"
|
||
|
doing="starting"
|
||
|
files="/etc/init.d/S[0-9][0-9]* /var/etc/init.d/S[0-9][0-9]*"
|
||
|
fi
|
||
|
|
||
|
names=$(for file in $files ; do echo ${file##*/} ; done | sort -u)
|
||
|
|
||
|
for name in $names; do
|
||
|
[ "${name:1}" = "[0-9][0-9]*" ] && continue
|
||
|
for file in /etc/init.d/$name /var/etc/init.d/$name; do
|
||
|
if [ -x "$file" ]; then
|
||
|
LOGINFO "$doing $file ..."
|
||
|
"$file" $action
|
||
|
break;
|
||
|
fi
|
||
|
done
|
||
|
done
|
||
|
}
|
||
|
|
||
|
create_node()
|
||
|
{
|
||
|
device=$1
|
||
|
|
||
|
rm -f /dev/${device}
|
||
|
major=`awk "\\$2==\"$device\" {print \\$1}" /proc/devices`
|
||
|
|
||
|
if [ ${major} ]; then
|
||
|
LOGINFO "Creating device node $1"
|
||
|
mknod /dev/${device} c $major 0
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
create_node_dir()
|
||
|
{
|
||
|
device=$1
|
||
|
|
||
|
rm -rf /dev/${device}
|
||
|
mkdir -p /dev/${device}
|
||
|
|
||
|
major=`awk "\\$2==\"$device\" {print \\$1}" /proc/devices`
|
||
|
|
||
|
if [ ${major} ]; then
|
||
|
LOGINFO "Creating device node dir $1"
|
||
|
mknod /dev/${device}/0 c $major 0
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
load_module()
|
||
|
{
|
||
|
kernel=$(uname -r)
|
||
|
module=/lib/modules/${kernel}/$1
|
||
|
shift
|
||
|
params=$@
|
||
|
|
||
|
if [ -e $module ]; then
|
||
|
LOGINFO "Loading ${module##*/} "
|
||
|
insmod $module $params
|
||
|
fi
|
||
|
}
|