systemd-update-utmp \
systemd-random-seed \
systemd-shutdownd \
- systemd-auto-console-getty \
+ systemd-auto-serial-getty \
systemd-modules-load \
systemd-remount-api-vfs \
systemd-kmsg-syslogd
nodist_systemunit_DATA = \
units/sysinit.target \
units/getty@.service \
+ units/serial-getty@.service \
units/graphical.target \
units/remote-fs.target \
units/multi-user.target \
units/systemd-logger.service \
units/systemd-shutdownd.service \
units/systemd-kmsg-syslogd.service \
- units/systemd-auto-console-getty.service \
+ units/systemd-auto-serial-getty.service \
units/systemd-modules-load.service \
units/systemd-remount-api-vfs.service \
units/systemd-update-utmp-runlevel.service \
EXTRA_DIST = \
units/sysinit.target.m4 \
units/getty@.service.m4 \
+ units/serial-getty@.service.m4 \
units/graphical.target.m4 \
units/multi-user.target.m4 \
units/remote-fs.target.m4 \
units/systemd-logger.service.in \
units/systemd-shutdownd.service.in \
units/systemd-kmsg-syslogd.service.in \
- units/systemd-auto-console-getty.service.in \
+ units/systemd-auto-serial-getty.service.in \
units/systemd-modules-load.service.in \
units/systemd-remount-api-vfs.service.in \
units/systemd-update-utmp-runlevel.service.in \
systemd_shutdownd_LDADD = \
libsystemd-basic.la
-systemd_auto_console_getty_SOURCES = \
- src/auto-console-getty.c \
+systemd_auto_serial_getty_SOURCES = \
+ src/auto-serial-getty.c \
src/dbus-common.c
-systemd_auto_console_getty_CFLAGS = \
+systemd_auto_serial_getty_CFLAGS = \
$(AM_CFLAGS) \
$(DBUS_CFLAGS)
-systemd_auto_console_getty_LDADD = \
+systemd_auto_serial_getty_LDADD = \
libsystemd-basic.la \
$(DBUS_LIBS)
$(LN_S) $(systemunitdir)/reboot.target ctrl-alt-del.target && \
$(LN_S) $(systemunitdir)/rescue.target kbrequest.target )
( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
- rm -f getty@tty1.service getty@tty2.service getty@tty3.service getty@tty4.service getty@tty5.service getty@tty6.service systemd-auto-console-getty.service && \
+ rm -f getty@tty1.service getty@tty2.service getty@tty3.service getty@tty4.service getty@tty5.service getty@tty6.service systemd-auto-serial-getty.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty1.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty2.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty3.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty4.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty5.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty6.service && \
- $(LN_S) $(systemunitdir)/systemd-auto-console-getty.service systemd-auto-console-getty.service )
+ $(LN_S) $(systemunitdir)/systemd-auto-serial-getty.service systemd-auto-serial-getty.service )
( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
rm -f getty.target remote-fs.target && \
$(LN_S) $(systemunitdir)/getty.target getty.target && \
assert(console);
/* FIXME: we probably should escape the tty name properly here */
- if (asprintf(&name, "getty@%s.service", console) < 0)
+ if (asprintf(&name, "serial-getty@%s.service", console) < 0)
return -ENOMEM;
if (!(m = dbus_message_new_method_call("org.freedesktop.systemd1", "/org/freedesktop/systemd1", "org.freedesktop.systemd1.Manager", "StartUnit"))) {
assert(console);
- if ((r = read_one_line_file("/tmp/cmdline", &line)) < 0) {
+ if ((r = read_one_line_file("/proc/cmdline", &line)) < 0) {
log_warning("Failed to read /proc/cmdline, ignoring: %s", strerror(-r));
return 0;
}
--- /dev/null
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Serial Getty on %I
+Requires=dev-%i.device
+After=dev-%i.device
+m4_ifdef(`TARGET_FEDORA',
+After=rc-local.service
+)m4_dnl
+m4_ifdef(`TARGET_ARCH',
+After=rc-local.service
+)m4_dnl
+
+# If additional gettys are spawned during boot (possibly by
+# systemd-auto-console-getty) then we should make sure that this is
+# synchronized before getty.target, even though getty.target didn't
+# actually pull it in.
+Before=getty.target
+
+[Service]
+Environment=TERM=vt100-nav
+m4_ifdef(`TARGET_FEDORA',
+ExecStartPre=-/sbin/securetty %I
+)m4_dnl
+ExecStart=-/sbin/agetty -s %I 115200,38400,9600
+Restart=restart-always
+RestartSec=0
+KillMode=process-group
+
+# Some login implementations ignore SIGTERM, so we send SIGHUP
+# instead, to ensure that login terminates cleanly.
+KillSignal=SIGHUP