diff options
author | Bill Nottingham <notting@redhat.com> | 2009-12-03 14:29:21 -0500 |
---|---|---|
committer | Bill Nottingham <notting@redhat.com> | 2009-12-03 14:29:21 -0500 |
commit | 79b2b232cb34f7df3e440968240975e44c4b8fc7 (patch) | |
tree | 96897ba99159dc82592baddddf3d68e7eafb64ce /init/serial.conf | |
parent | a0025d667ffc0ecd70c0da39a7a3fede56f71a2a (diff) | |
download | initscripts-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/serial.conf')
-rw-r--r-- | init/serial.conf | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/init/serial.conf b/init/serial.conf new file mode 100644 index 00000000..660e93bd --- /dev/null +++ b/init/serial.conf @@ -0,0 +1,42 @@ +# Automatically start a configured serial console +# +# How this works: +# +# On boot, a udev helper examines /dev/console. If a serial console is the +# primary console (last console on the commandline in grub), the event +# 'fedora.serial-console-available <port name> <speed>' is emitted, which +# triggers this script. It waits for the runlevel to finish, ensures +# the proper port is in /etc/securetty, and starts the getty. +# +# If your serial console is not the primary console, or you want a getty +# on serial even if it's not the console, create your own event by copying +# /etc/event.d/tty[2-6], and changing the getty line in that file. + +start on fedora.serial-console-available * +stop on runlevel [016] + +instance +pre-start script + while /bin/true ; do + LANG=C /sbin/initctl status rcS | grep -wq "rcS (stop) waiting" && break + sleep 1 + done + while /bin/true ; do + runlevel=$(/sbin/runlevel | /bin/awk '{ print $2 }') + case "$runlevel" in + 2|3|4|5) + LANG=C /sbin/initctl status rc$runlevel | grep -wq "rc$runlevel (stop) waiting" && break + ;; + *) + ;; + esac + sleep 1 + done + /sbin/securetty $1 +end script +exec /sbin/agetty /dev/$1 $2 vt100-nav +post-stop script + if [ "$UPSTART_EVENT" != "${UPSTART_EVENT##fedora.serial-console-available}" ]; then + initctl emit --no-wait fedora.serial-console-available $1 $2 + fi +end script |