aboutsummaryrefslogtreecommitdiffstats
path: root/init/rcS.conf
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2009-12-03 14:29:21 -0500
committerBill Nottingham <notting@redhat.com>2009-12-03 14:29:21 -0500
commit79b2b232cb34f7df3e440968240975e44c4b8fc7 (patch)
tree96897ba99159dc82592baddddf3d68e7eafb64ce /init/rcS.conf
parenta0025d667ffc0ecd70c0da39a7a3fede56f71a2a (diff)
downloadinitscripts-79b2b232cb34f7df3e440968240975e44c4b8fc7.tar
initscripts-79b2b232cb34f7df3e440968240975e44c4b8fc7.tar.gz
initscripts-79b2b232cb34f7df3e440968240975e44c4b8fc7.tar.bz2
initscripts-79b2b232cb34f7df3e440968240975e44c4b8fc7.tar.xz
initscripts-79b2b232cb34f7df3e440968240975e44c4b8fc7.zip
Move to new upstart job location and file extension.
Diffstat (limited to 'init/rcS.conf')
-rw-r--r--init/rcS.conf31
1 files changed, 31 insertions, 0 deletions
diff --git a/init/rcS.conf b/init/rcS.conf
new file mode 100644
index 00000000..1c0a54be
--- /dev/null
+++ b/init/rcS.conf
@@ -0,0 +1,31 @@
+# rcS - runlevel compatibility
+#
+# This task runs the old sysv-rc startup scripts.
+
+start on startup
+
+stop on runlevel
+
+# 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
+ if [ "$UPSTART_EVENT" = "startup" ]; then
+ runlevel=$(/bin/awk -F ':' '$3 == "initdefault" && $1 !~ "^#" { 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
+end script