Назад | Перейти на главную страницу

chsh: ошибка аутентификации PAM

я хочу изменить оболочку env по умолчанию

и беги chsh -s /bin/zsh как пользователь root,

но появилось сообщение об ошибке: chsh: PAM authentication failed.

я нахожу эту тему http://ubuntuforums.org/showthread.php?t=1702833

но ответ не решил мою проблему

любая помощь будет оценена


это содержимое /etc/pam.d/chsh

#
# The PAM configuration file for the Shadow `chsh' service
#

# This will not allow a user to change their shell unless
# their current one is listed in /etc/shells. This keeps
# accounts with special shells from changing them.
auth       required   pam_shells.so

# This allows root to change user shell without being
# prompted for a password
auth            sufficient      pam_rootok.so

# The standard Unix authentication modules, used with
# NIS (man nsswitch) as well as normal /etc/passwd and
# /etc/shadow entries.
@include common-auth
@include common-account
@include common-session

это содержимое / etc / shells

# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/tmux
/usr/bin/screen
/bin/zsh
/usr/bin/zsh

Я обнаружил, что раньше бегал chsh -s zsh это изменит первую строку /etc/passwd так как

root:x:0:0:root:/root:zsh

и chsh будет запрашивать пароль, как бы вы ни пытались

я просто редактирую /etc/passwd файл вручную, и все в порядке.

глупая ошибка и спасибо за ваши ответы

Проверьте свой файл / etc / shells и добавьте в него / bin / zsh, если эта строка не существует.

Проверьте свои /etc/passwd. В моем случае я указал недопустимую оболочку с помощью chsh ранее, и это было причиной проблемы.

Я изменил это с zsh как оболочка для /bin/zsh и это избавило меня от проблемы.

Вы должны запустить свой код как sudo:

sudo chsh -s /bin/zsh

У меня тоже была такая же проблема, и это сработало!

Похоже, ты ошибаешься. Чтобы проверить это:

[nick ~]$ which zsh
/usr/bin/zsh

Если результатом является / usr / bin / zch, это должно помочь:

[nick ~]$ chsh -s /usr/bin/zsh

* редактировать на предмет опечатки.

Я столкнулся с той же проблемой. всякий раз, когда я набирал чш он используется для подсказки

chsh: PAM authentication failed

Но я решил это, сделав некоторые изменения в /etc/passwd файл

Users of kali-linux

просто откройте свой корневой терминал и измените /etc/passwd файл, вы можете использовать редактор pico, nano или vi для этой работы, я собираюсь vi

vi /etc/passwd

затем найдите учетную запись пользователя. и измените оболочки на желаемую оболочку, убедитесь, что нужная оболочка установлена ​​в ваших дистрибутивах Linux, чтобы новый пользователь увидел, какие оболочки присутствуют в их Linux, просто введите

cat /etc/shells

он перечисляет их там. Если вы вообще установили оболочку, и вы не можете увидеть ее в /etc/shell вам нужно создать ссылку и указать путь оболочки, скажем, предположим /bin/ksh в /etc/shells файл вручную ...

например, вы находитесь в bash и хотите изменить его на ksh

просто зайдите в аккаунт в /etc/passwd файл и в последнем поле редактировать

/bin/bash к /bin/ksh или /bin/ksh93 (как в вашем cat /etc/shells)

просто выйдите из системы и войдите в систему, и все готово ...

для пользователей других дистрибутивов (скажем) ubuntu

введите

sudo -H gnome-terminal (чтобы получить корневой терминал)

и процесс такой же, как и выше, поскольку у вас тоже есть корневой терминал, такой как пользователь kali-linux ..