132 lines
1.9 KiB
Bash
Executable File
132 lines
1.9 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
. /etc/profile
|
|
# Start all init scripts in /etc/init.d
|
|
# executing them in numerical order.
|
|
#
|
|
|
|
waitrc()
|
|
{
|
|
if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ];then
|
|
return 1
|
|
fi
|
|
cnt=$1
|
|
while [ $cnt -lt $2 ]; do
|
|
/bin/ps | grep "$3" | grep -v grep >/dev/null
|
|
if [ $? = 0 ]; then
|
|
sleep 2
|
|
else
|
|
cnt=$2
|
|
fi
|
|
cnt=$(($cnt+1))
|
|
done
|
|
return 0
|
|
}
|
|
w=0
|
|
for i in /etc/rcS.d/S[0-5]?* ;do
|
|
# Ignore dangling symlinks (if any).
|
|
#[ ! -f "$i" ] && continue
|
|
|
|
case "$i" in
|
|
*.sh)
|
|
# Source shell script for speed.
|
|
(
|
|
trap - INT QUIT TSTP
|
|
set start
|
|
. $i
|
|
)
|
|
;;
|
|
*)
|
|
# No sh extension, so fork subprocess.
|
|
$i start
|
|
;;
|
|
esac
|
|
done
|
|
|
|
for i in /etc/rcS.d/S[6-8]?* ;do
|
|
[ -f "$i" ] || continue
|
|
case "$i" in
|
|
*.sh)
|
|
# Source shell script for speed.
|
|
(
|
|
trap - INT QUIT TSTP
|
|
set start
|
|
. $i
|
|
)
|
|
;;
|
|
*httpd)
|
|
$i start
|
|
;;
|
|
*Qthttpd)
|
|
$i start
|
|
;;
|
|
*cupsd)
|
|
$i start
|
|
;;
|
|
*smb)
|
|
$i start
|
|
;;
|
|
*ftp)
|
|
$i start
|
|
;;
|
|
*nfs)
|
|
$i start
|
|
;;
|
|
*recycled)
|
|
$i start
|
|
;;
|
|
*nvrd)
|
|
$i start
|
|
;;
|
|
*)
|
|
# No sh extension, so fork subprocess.
|
|
$i start &
|
|
;;
|
|
esac
|
|
done
|
|
waitrc $w 40 "/etc/rcS.d/S"
|
|
|
|
for i in /etc/rcS.d/S9?* ;do
|
|
[ -f "$i" ] || continue
|
|
case "$i" in
|
|
*.sh)
|
|
# Source shell script for speed.
|
|
(
|
|
trap - INT QUIT TSTP
|
|
set start
|
|
. $i
|
|
)
|
|
;;
|
|
*init_nas)
|
|
# No sh extension, so fork subprocess.
|
|
waitrc $w 10 "/etc/rcS.d/S9"
|
|
$i start
|
|
;;
|
|
*)
|
|
# No sh extension, so fork subprocess.
|
|
$i start &
|
|
;;
|
|
esac
|
|
done
|
|
waitrc $w 20 "/etc/rcS.d/S9"
|
|
|
|
#for QPKG
|
|
for i in /etc/rcS.d/QS??* ;do
|
|
# Ignore dangling symlinks (if any).
|
|
[ -f "$i" ] || continue
|
|
case "$i" in
|
|
*.sh)
|
|
# Source shell script for speed.
|
|
(
|
|
trap - INT QUIT TSTP
|
|
set start
|
|
. $i
|
|
)
|
|
;;
|
|
*)
|
|
# No sh extension, so fork subprocess.
|
|
$i start
|
|
;;
|
|
esac
|
|
done
|