Пытаюсь сделать linux с нуля. Мне удалось создать пользователя для управления всем (с именем lfs), и я смог войти в систему с помощью этой команды. Затем я перезапустил свой компьютер и больше не могу переключиться на этого пользователя. Если я войду su - lfs
в моем терминале я получаю вывод [1]+ Stopped su - lfs
после правильного ввода пароля пользователя. Есть идеи, как это исправить? Спасибо.
Как-то SIGSTOP
сигнал отправляется su
обработать. Интересно то, что только root
процессы могут посылать сигналы su
. Другими словами: это не может быть оболочка, запускаемая su
. По крайней мере, не напрямую; должно быть несколько sudo
команда или подобное.
Можно так: Перед тем как бежать su - lfs
ты бежишь echo $$
чтобы получить PID оболочки. Затем в другом терминале вы запускаете:
strace -f -tt -p $PID -o shell.strace
Тогда ты бежишь su - lfs
. После su
был остановлен, вы прерываете strace
с участием Ctrl-C и посмотрите файл shell.strace
. Он должен содержать строки вроде
[pid 23558] --- SIGSTOP {si_signo=SIGSTOP, si_code=SI_USER, si_pid=23560, si_uid=0} ---
[pid 23558] --- stopped by SIGSTOP ---
Это дает вам PID процесса, отправившего сигнал.