blob: cd0a8860bc20efb678f1330e8fea17780b8a5169 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#!/bin/sh
#
# /etc/rc.single
#
. /etc/rc.conf
. /etc/rc.d/functions
if [ "$PREVLEVEL" = "3" -o "$PREVLEVEL" = "5" ]; then
# Shutdown daemons
let i=${#DAEMONS[@]}
while [[ i -gt 0 ]]; do
if [[ `echo ${DAEMONS[$i]} | grep '^[^\!]' | wc -l` -eq 1 ]]; then
/etc/rc.d/${DAEMONS[$i]} stop
fi
let i=i-1
done
# find any leftover daemons and shut them down
if [ -d /var/run/daemons ]; then
for daemon in `ls /var/run/daemons`; do
/etc/rc.d/$daemon stop
done
fi
fi
if [ "$PREVLEVEL" != "N" ]; then
stat_busy "Sending SIGTERM To Processes"
/sbin/killall5 -15 &> /dev/null
/usr/bin/sleep 5
stat_done
stat_busy "Sending SIGKILL To Processes"
/sbin/killall5 -9
/usr/bin/sleep 1
stat_done
if [ -e /dev/.devfsd -a -x /sbin/devfsd ]; then
# Looks like devfs is running, use it
status "Starting DevFS Daemon" /sbin/devfsd /dev
elif [ -x /etc/start_udev -a -d /sys/block ]; then
# We have a start_udev script and /sys appears to be mounted, use UDev
status "Starting UDev Daemon" /etc/start_udev
else
# Static /dev, our last resort
status "Using static /dev filesystem" /bin/true
fi
# try syslog-NG first, then fall back to good ol' syslogd
if [ -x /etc/rc.d/syslog-ng ]; then
/etc/rc.d/syslog-ng start
elif [ -x /etc/rc.d/syslogd ]; then
/etc/rc.d/syslogd start
[ -x /etc/rc.d/klogd ] && /etc/rc.d/klogd start
fi
fi
if [ "$RUNLEVEL" = "1" ]; then
printsep
printhl "Entering single-user mode..."
# make sure /dev/initctl is in place
/bin/kill -HUP 1
exec /sbin/init -t1 S
fi
# End of file
|