Почему команда «who» не отображает «root» как вошедшего в систему пользователя?

Почему команда «who» не отображает «root» как вошедшего в систему пользователя?

Когда я вхожу как root из gnome-terminal с помощью команды:

sudo su

он вводит меня в систему как пользователя root.

Разве это переключение пользователя не считается входом в систему?

И еще, какая команда может показать мне все выполненные мной «переключения»?

решение1

Для начала давайте рассмотрим man who:

Print information about users who are currently logged in.

Как вы сказали,

sudo suон регистрируетмнекак пользователь root

Итак, речь идет оты, не окорень.

И вы правы. Это из man sudo:

sudo allows a permitted user to execute a command as the superuser or
another user, as specified by the security policy.

Итак, еще раз, когда вы запускаете sudo suкоманду, на самом деле вы (нетroot) выполняют suкоманду как суперпользователь.

Если вы хотите стать root, сначала вам нужно включить учетную запись root. Смотрите здесь, как это сделать:

После этого вы сможете войти в систему как пользователь root в tty1-6, через ssh, в графическом интерфейсе на экране входа в систему и т. д.

В Ubuntu, кажется, есть альтернатива, чтобы войти в систему root без включения его учетной записи. Следующая команда сделает это:

pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY gnome-terminal

Откроется корневой терминал:

корневой терминал

По второму вопросу дам вам подсказку: поищите в /var/logкаталоге файлы типа auth.log.*.

Связанный контент