summaryrefslogtreecommitdiffstats
path: root/jobs.d/rcS
blob: 5faef6e81bdc54d2837af24504315e0bc4696447 (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
# rcS - runlevel compatibility
#
# This task runs the old sysv-rc startup scripts.

start on startup
stop on runlevel
task

# Note: there can be no previous runlevel here, if we have one it's bad
# information (we enter rc1 not rcS for maintenance).  Run /etc/rc.d/rc
# without information so that it defaults to previous=N runlevel=S.
console output
script
	runlevel --set S >/dev/null || true

	/etc/rc.d/rc.sysinit 
	runlevel --reboot || true
end script
post-stop script
	for UPSTART_EVENT in $UPSTART_EVENTS; do
		if [ "$UPSTART_EVENT" == "startup" ]; then
			runlevel=$(/bin/awk -F ':' '$3 == "initdefault" { print $2 }' /etc/inittab)
			[ -z "$runlevel" ] && runlevel="3"
			for t in $(cat /proc/cmdline); do
				case $t in
					-s|single|S|s) runlevel="S" ;;
					[1-9])       runlevel="$t" ;;
				esac
			done
			exec telinit $runlevel
		fi
	done
end script