В systemd локальные виртуальные консоли управляются getty@.service
а последовательные линии - serial-getty@.service
. Оба запускают программу agetty, которая инициализирует несколько параметров tty, отображает баннер и приглашение «login:».
Для вашей программы лучше всего использовать существующий модуль в качестве базы и изменить его для запуска пользовательской программы.
Скопируйте /usr/lib/systemd/system/getty@.service
в /etc/systemd/system/myapp@.service
. Отредактируйте новый файл, чтобы в ExecStart = была указана правильная программа, и дополнительно добавьте строку Conflicts=getty@%i.service
в разделе [Unit] .
Протестируйте с помощью systemctl start myapp@tty1
. Если это работает, отключите оригинальный getty@tty1.service через systemctl и включите свой собственный.