add agetty service
The agetty service is an alternate way to manage gettys with agetty under Linux which is separate from an external init system.
This commit is contained in:
parent
21ca2b746c
commit
d7bbb0f583
4
NEWS.md
4
NEWS.md
@ -9,6 +9,10 @@ Since the deptree2dot tool and the perl requirement are completely
|
||||
optional, the deptree2dot tool has been moved to the support directory.
|
||||
As a result, the MKTOOLS=yes/no switch has been removed from the makefiles.
|
||||
|
||||
This version adds the agetty service which can be used to spawn
|
||||
agetty on a specific terminal. This is currently documented in the
|
||||
agetty-guide.md file at the top level of this distribution.
|
||||
|
||||
## OpenRC-0.23
|
||||
|
||||
The tmpfiles.d processing code, which was part of previous versions of
|
||||
|
19
agetty-guide.md
Normal file
19
agetty-guide.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Setting up the agetty service in OpenRC
|
||||
|
||||
The agetty service is an OpenRC specific way to monitor and respawn a
|
||||
getty, using agetty, on Linux. To use this method, make sure you aren't
|
||||
spawning a getty manager for this port some other way (such as through
|
||||
sysvinit/inittab), then run the following commands as root.
|
||||
|
||||
Note that [port] refers to the port you are spawning the getty on, and
|
||||
not the full path to it. For example, tty0 or ttyS0instead of /dev/tty0
|
||||
or /dev/ttyS0.
|
||||
tty0 or ttyS0, not the full path to it (for example, tty0 or ttyS0 and
|
||||
|
||||
```
|
||||
# cd /etc/init.d
|
||||
# ln -s agetty agetty.[port]
|
||||
# cd /etc/conf.d
|
||||
# cp agetty agetty.[port]
|
||||
#rc-update add agetty.[port] [runlevel]
|
||||
```
|
@ -12,8 +12,8 @@ include ${MK}/os.mk
|
||||
|
||||
CONF-FreeBSD= ipfw modules moused powerd rarpd savecore syscons
|
||||
|
||||
CONF-Linux= consolefont devfs dmesg hwclock keymaps killprocs modules mtab \
|
||||
net-online
|
||||
CONF-Linux= agetty consolefont devfs dmesg hwclock keymaps killprocs modules \
|
||||
mtab net-online
|
||||
|
||||
CONF-NetBSD= moused rarpd savecore
|
||||
|
||||
|
8
conf.d/agetty
Normal file
8
conf.d/agetty
Normal file
@ -0,0 +1,8 @@
|
||||
# Set the baud rate of the terminal line
|
||||
#baud=""
|
||||
|
||||
# set the terminal type
|
||||
#termtype="linux"
|
||||
|
||||
# extra options to pass to agetty for this port
|
||||
#agetty_options=""
|
@ -21,9 +21,9 @@ SRCS-FreeBSD= hostid.in modules.in moused.in newsyslog.in pf.in rarpd.in \
|
||||
SRCS-FreeBSD+= adjkerntz.in devd.in dumpon.in encswap.in ipfw.in \
|
||||
modules.in modules-load.in mixer.in nscd.in powerd.in syscons.in
|
||||
|
||||
SRCS-Linux= binfmt.in devfs.in dmesg.in hwclock.in consolefont.in keymaps.in \
|
||||
killprocs.in modules.in modules-load.in mount-ro.in mtab.in numlock.in \
|
||||
procfs.in net-online.in sysfs.in termencoding.in
|
||||
SRCS-Linux= agetty.in binfmt.in devfs.in dmesg.in hwclock.in consolefont.in \
|
||||
keymaps.in killprocs.in modules.in modules-load.in mount-ro.in mtab.in \
|
||||
numlock.in procfs.in net-online.in sysfs.in termencoding.in
|
||||
|
||||
# Generic BSD scripts
|
||||
SRCS-NetBSD= hostid.in moused.in newsyslog.in pf.in rarpd.in rc-enabled.in \
|
||||
|
31
init.d/agetty.in
Normal file
31
init.d/agetty.in
Normal file
@ -0,0 +1,31 @@
|
||||
#!@SBINDIR@/openrc-run
|
||||
# Copyright (c) 2017 The OpenRC Authors.
|
||||
# See the Authors file at the top-level directory of this distribution and
|
||||
# https://github.com/OpenRC/openrc/blob/master/AUTHORS
|
||||
#
|
||||
# This file is part of OpenRC. It is subject to the license terms in
|
||||
# the LICENSE file found in the top-level directory of this
|
||||
# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE
|
||||
# This file may not be copied, modified, propagated, or distributed
|
||||
# except according to the terms contained in the LICENSE file.
|
||||
|
||||
description="start agetty on a terminal line"
|
||||
supervisor=supervise-daemon
|
||||
port="${RC_SVCNAME#*.}"
|
||||
term_type="${term_type:-linux}"
|
||||
command=/sbin/agetty
|
||||
command_args_foreground="${agetty_options} ${port} ${baud} ${termtype}"
|
||||
pidfile="/run/${RC_SVCNAME}.pid"
|
||||
|
||||
depend() {
|
||||
after local
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
if [ -z "$port" ]; then
|
||||
eerror "${RC_SVCNAME} cannot be started directly. You must create"
|
||||
eerror "symbolic links to it for the ports you want to start"
|
||||
eerror "agetty on and add those to the appropriate runlevels."
|
||||
return 1
|
||||
fi
|
||||
}
|
Loading…
Reference in New Issue
Block a user