Bug 41605

Summary: Не удаётся залогиниться в контейнер с помощью lxc-console
Product: Sisyphus Reporter: Alexander Makeenkov <amakeenk>
Component: lxcAssignee: Alexey Shabalin <shaba>
Status: ASSIGNED --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: cas, dans, shaba, shevchenkodyu
Version: unstable   
Hardware: x86_64   
OS: Linux   
URL: https://github.com/lxc/lxc/issues/4393

Description Alexander Makeenkov 2021-12-21 16:32:47 MSK
-== Шаги воспроизведения ==-
# apt-get install lxc
# systemctl start lxc-net
# lxc-create -n test -t /usr/share/lxc/templates/lxc-download
Distribution:  alt
Release: p10
Architecture: amd64
# lxc-start -n test -d && lxc-ls --active
# lxc-console -n test

-== Ожидаемый результат ==-
Выводится приглашение для ввода имени пользователя:
# lxc-console -n test
Connected to tty 1
Type <Ctrl+a q> to exit the console, <Ctrl+a Ctrl+a> to enter Ctrl+a itself

test login:

-== Получаемый результат ==-
Приглашение не выводится, зависает на сообщении:
Connected to tty 1
Type <Ctrl+a q> to exit the console, <Ctrl+a Ctrl+a> to enter Ctrl+a itself

Версия: lxc-4.0.11-alt1

В p10 проблема не воспроизводится (lxc-4.0.10-alt1), но начинает воспроизводится после обновления до задания https://git.altlinux.org/tasks/291659
Comment 1 Vladimir D. Seleznev 2022-02-07 16:09:06 MSK
Воспроизвёл.
Comment 2 Alexander Makeenkov 2023-10-13 12:37:09 MSK
До сих пор воспроизводится на версии lxc-5.0.2-alt2
Comment 3 Andrey Cherepanov 2023-11-30 14:16:09 MSK
ping
Comment 4 Alexey Shabalin 2024-01-31 22:17:21 MSK
Анализ показал следующее:
в контейнере отсутствует /dev/tty0(но есть /dev/tty) , поэтому срабатывает условие  из
/lib/systemd/system/getty@.service (getty@tty1):
ConditionPathExists=/dev/tty0
и сервис getty@tty1 не запускается. Соответственно agetty на консоли не слушает и приглашения нет.

Для теста попробовал убрать эту строчу, заработала. Но только tty1. По-умолчанию lxc делает 4 консоли, но они не включаются по-умолчанию(и не должны). А что бы запускались, видимо не хватает какого-то события в контейнере, что бы systemd отработал.

Буду придумывать решение.