units: add console-shell.service which can be used insted of the gettys to get a shell on /dev/console

This commit is contained in:
Lennart Poettering 2011-03-14 21:00:53 +01:00
parent a5f9be4579
commit 1063dc3a52
4 changed files with 46 additions and 0 deletions

View File

@ -260,6 +260,7 @@ dist_systemunit_DATA = \
nodist_systemunit_DATA = \
units/getty@.service \
units/serial-getty@.service \
units/console-shell.service \
units/graphical.target \
units/remote-fs.target \
units/multi-user.target \
@ -304,6 +305,7 @@ nodist_userunit_DATA = \
EXTRA_DIST = \
units/getty@.service.m4 \
units/serial-getty@.service.m4 \
units/console-shell.service.m4 \
units/graphical.target.m4 \
units/multi-user.target.m4 \
units/remote-fs.target.m4 \

2
TODO
View File

@ -24,6 +24,8 @@ F15:
* capability_bounding_set_drop not used.
* remove getty magic, move it into a generator
Features:
* optionally create watched directories in .path units

1
units/.gitignore vendored
View File

@ -1,3 +1,4 @@
console-shell.service
systemd-sysctl.service
systemd-ask-password-console.service
rescue.service

View File

@ -0,0 +1,41 @@
# 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=Console Shell
After=systemd-user-sessions.service plymouth-quit-wait.service
m4_ifdef(`TARGET_FEDORA',
After=rc-local.service
)m4_dnl
m4_ifdef(`TARGET_ARCH',
After=rc-local.service
)m4_dnl
m4_ifdef(`TARGET_FRUGALWARE',
After=local.service
)m4_dnl
m4_ifdef(`TARGET_ALTLINUX',
After=rc-local.service
)m4_dnl
m4_ifdef(`TARGET_MANDRIVA',
After=rc-local.service
)m4_dnl
Before=getty.target
[Service]
Environment=HOME=/root
WorkingDirectory=/root
ExecStart=-/sbin/sulogin
ExecStopPost=-/bin/systemctl poweroff
StandardInput=tty-force
KillMode=process-group
# Bash ignores SIGTERM, so we send SIGHUP instead, to ensure that bash
# terminates cleanly.
KillSignal=SIGHUP
[Install]
WantedBy=getty.target