Ubuntu входит в определенную оболочку tty как отдельный пользователь

294
Galveston01

Я пытаюсь запустить сервер x для определенного пользователя на tty5 от имени пользователя root от tty6. Мой подход состоял в том, чтобы войти в tty5 как определенный пользователь из командной строки tty6. Тогда я бы просто chvt5 и startxтам. Проблема в том, что я понятия не имею, как войти в систему определенного пользователя в указанном tty.

Итак, вкратце: есть ли команда, чтобы перейти на определенный tty и войти в систему как отдельный пользователь от другого tty, используя привилегии root?

Или я могу просто startxдля указанного пользователя и виртуального терминала?

Редактировать: я хочу использовать привилегии root для входа в систему указанного пользователя, чтобы пароль не запрашивался.

0

1 ответ на вопрос

0
atype

Вы можете использовать openvtкоманду. С man-страницы:

Команда openvt [-c vtnumber] [ОПЦИИ] [-]

-c, --console = VTNUMBER

-s, --switch

-u, --user

Таким образом, вы можете войти в систему и переключиться на желаемый tty, и запустить программу автоматически.

Уже попробовал это. Он всегда открывает новый tty, а я хочу получить доступ к уже существующему tty5. Кроме того, несмотря на передачу пользователя с помощью параметра `-u`, при выполнении` whoami` в новом tty он возвращает пользователя, открывшего новый tty (а не того, который был передан). Примечание: я выполнил `sudo openvt -s -u tester - startx` из tty5 и tty n открывается. Редактировать: передача команды для выполнения с помощью `- [command]` также не работает Galveston01 4 года назад 0