Команда su + ошибка аутентификации

У меня проблемы с командой su. Я знаю свой пароль и набираю его правильно, но su указывает на сбой аутентификации.

Поэтому я проверил в Интернете, а затем перешел в режим восстановления и изменил пароль моего имени пользователя на тот, который я вводил ранее.

Даже сейчас вводим тот же пароль на su дает мне ошибку аутентификации.

Подскажите пожалуйста что я делаю не так??

7 ответов

Решение

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

Вместо этого, чтобы стать пользователем root, используйте sudo -i с вашим личным паролем.

su запрашивает пароль учетной записи, которую вы пытаетесь войти. Это использование (упрощенно):

su username

При опускании username, имя пользователя по умолчанию root, Поскольку пароль пользователя root по умолчанию отключен в Ubuntu, пароль не будет действительным. Предпочтительный способ запуска команд root не через оболочку su, а с помощью sudo, как в:

sudo mount /dev/sdb1 /mnt

root учетная запись в Ubuntu по умолчанию отключена. Это означает, что у него нет пароля (что отличается от пустого пароля), и никакая попытка аутентификации с паролем root не будет успешной. Следовательно, su или же su - не будет работать.

Вместо этого используйте sudo запустить команду от имени root:

sudo command...

Если вы хотите корневую оболочку, как вы получаете с su, бежать:

sudo -s

Если вы хотите корневую оболочку, как вы получаете с su -, бежать:

sudo -i

Когда вам нужно войти в систему, как один из ваших неидентифицированных пользователей говорят git (не имеет pwd)

su - git
Password: 
su: Authentication failure

РЕШЕНИЕ - используйте этот синтаксис для входа в систему как ИД пользователя git

sudo su - git

Я наткнулся на ОС, Minibian, где бит setuid отсутствовал в /bin/su, вызывая эту ошибку, даже если пароль учетной записи root был включен.

В Linux единственный способ стать пользователем root - выполнить файл setuid-root. Когда ты бежишь sudo или же suих бит setuid установлен, поэтому эффективный пользователь процесса становится пользователем root, а затем он выполняет аутентификацию уже как пользователь root! Если это не удается, они выходят.

Во всяком случае, вот симптомы и исправление:

$ su
Password:
su: authentication failure
$ sudo su
# ls -l /bin/su
-rwxr-xr-x 1 root root 31092 Jun  5  2012 /bin/su
# chmod u+s /bin/su
# ls -l /bin/su
-rwsr-xr-x 1 root root 31092 Jun  5  2012 /bin/su

Обратите внимание на разницу: rwx до, rws после.

su просит пароль root.

Вы можете установить пароль пользователя root, пока вы являетесь пользователем root (указав sudo suпри условии, что вы находитесь на sudoers файл), дав команду passwd и установка нового пароля.

Это не рекомендуется по разным причинам.

В моем случае это было потому, что запись для этого пользователя отсутствовала в /etc/shadow,

Я скопировал на другой тестовый сервер все записи в /etc/passwd с ID выше 1000 вместе с /etc/group но забыл /etc/shadow, Так что каждый раз, когда я сделал su с любым из этих пользователей я бы получил эту ошибку. После добавления отсутствующей записи в /etc/shadow ошибка перестала бы появляться.

Например /etc/shadow:

myusername:*:16992:0:99999:7:::
Другие вопросы по тегам