getty (Русский)

Состояние перевода:
На этой странице представлен перевод статьи
getty
. Дата последней синхронизации: 14 февраля 2022. Вы можете
помочь
синхронизировать перевод, если в английской версии произошли
изменения
.
Ссылки по теме
Экранный менеджер
getty
— это общее название программы, которая управляет терминальной линией и подключенным к ней терминалом. Её цель — защитить систему от несанкционированного доступа. Как правило, каждый процесс getty запускается через
systemd
и управляет одной терминальной линией.
Установка
По умолчанию в Arch Linux используется
agetty
, который является частью пакета
util-linux
.
Существуют альтернативы:
mingetty
— Минимальный getty, позволяющий автоматически входить в систему.
mingetty
AUR
||
mingetty
AUR
fbgetty
— Консольный getty, подобный mingetty, который поддерживает фреймбуфер.
http://projects.meuh.org/fbgetty/
[
устаревшая ссылка
2022-09-18 ⓘ]
||
fbgetty
AUR
[
ссылка недействительна
: package not found]
mgetty
— Универсальная программа для работы со всеми аспектами модема под Unix.
http://mgetty.greenie.net/
||
mgetty
AUR
Добавление дополнительных виртуальных консолей
В файле
/etc/systemd/logind.conf
измените опцию
NAutoVTs=6
на желаемое число виртуальных консолей, которые будут доступны после загрузки системы.
При необходимости можно временно запустить новую виртуальную консоль путём
запуска
службы
getty@tty
N
.service
напрямую.
Автоматический вход в виртуальную консоль
Настройка ведётся через
drop-in файлы
systemd для переопределения параметров по умолчанию, передаваемых в
agetty
.
Настройки для виртуальных и последовательных (serial) консолей отличаются. Скорее всего вам нужно настроить автоматический вход в систему на виртуальной консоли (имя устройства которой
tty
N
, где
N
— число). Конфигурация автоматического входа для последовательных консолей будет немного отличаться. Имена устройств последовательных консолей выглядят как
ttyS
N
, где
N
— число.
Совет
Подумайте об использовании функции автовхода в
greetd
. Он не будет выполнять автологин во второй раз при выходе из начальной сессии, а вместо этого покажет экран входа в систему.
Виртуальная консоль
Создайте
drop-in файл
для
getty@tty1.service
со следующим содержимым:
/etc/systemd/system/getty@tty1.service.d/autologin.conf
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --autologin
пользователь
- $TERM
Совет
Опция
Type=idle
, присутствующая в стандартном
getty@.service
, задержит запуск службы до тех пор, пока не будут выполнены все задания (запросы на изменение состояния юнитов), чтобы не засорять приглашение к входу в систему загрузочными сообщениями. При
автоматическом запуске X
может оказаться полезным сразу запустить
getty@tty1.service
, добавив
Type=simple
в drop-in файл. И система инициализации, и
startx
могут быть
заглушены
, чтобы избежать перемешивания их сообщений во время загрузки.
Приведённый выше фрагмент приведет к тому, что тип сеанса loginctl будет установлен на
tty
. При желании (например, при
автоматическом запуске X
можно вручную установить тип сеанса
wayland
или
x11
путём добавления
Environment=XDG_SESSION_TYPE=x11
или
Environment=XDG_SESSION_TYPE=wayland
в этот файл.
Если вам не нужен автовход, но вы не хотите вводить своё имя пользователя, смотрите
#Запрос только пароля для пользователя по умолчанию
.
Если вам нужен
tty
отличный от
tty1
, смотрите
systemd FAQ
.
Последовательная консоль
Создайте следующий
drop-in файл
:
/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f -- \\u' --keep-baud --autologin
пользователь
115200,57600,38400,9600 - $TERM
Консоль nspawn
Для настройки автовхода в контейнере
systemd-nspawn
создайте следующий
drop-in файл
:
/etc/systemd/system/console-getty.service.d/autologin.conf
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --keep-baud --autologin
пользователь
- 115200,38400,9600 $TERM
Если для доступа к контейнеру используется метод
machinectl login
мой-контейнер
, также настройте шаблон
container-getty@.service
, который управляет
pts/[0-9]
:
/etc/systemd/system/container-getty@.service.d/autologin.conf
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --keep-baud --autologin
пользователь
- 115200,38400,9600 $TERM
Запрос только пароля для пользователя по умолчанию
Getty можно использовать для входа в систему с виртуальной консоли с пользователем по умолчанию, вводя пароль, но без необходимости вводить имя пользователя. Например, чтобы запросить пароль пользователя
пользователь
на
tty1
:
/etc/systemd/system/getty@tty1.service.d/skip-username.conf
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p --
пользователь
' --noclear --skip-login - $TERM
Затем
включите
getty@tty1
.
Отображение загрузочных сообщений на tty1
По умолчанию в Arch включена служба
getty@tty1
. В файле службы уже прописан параметр
--noclear
, который не позволяет agetty очищать экран. Однако
systemd
очищает экран перед его запуском. Чтобы отключить это поведение, создайте следующий
drop-in файл
:
/etc/systemd/system/getty@tty1.service.d/noclear.conf
[Service]
TTYVTDisallocate=no
Примечание
Удалите
quiet
из
параметров ядра
.
Поздний запуск KMS может привести к стиранию первых нескольких сообщений. Смотрите
Kernel mode setting (Русский)#Ранний запуск KMS
или
Kernel mode setting (Русский)#Отключение modesetting
.
Смотрите также
systemd (Русский)#Изменение цели загрузки по умолчанию
The TTY demystified
tty
— Википедия