Anmeldung nicht möglich, wenn die Shell auf /usr/bin/bash eingestellt ist

Anmeldung nicht möglich, wenn die Shell auf /usr/bin/bash eingestellt ist

Ich bin gerade auf ein interessantes Problem gestoßen. Wenn ich unter Arch Linux einen Benutzer erstelle, der eine Shell von verwendet, /usr/binkann er sich nicht anmelden. Ich erstelle den Benutzer mit:

useradd -m -G wheel -s /usr/bin/bash username

und wenn sie versuchen, sich anzumelden, erhalten sie die Meldung „Anmeldung falsch“. Aber wenn ich /etc/passwddie Shell bearbeite und ändere /bin/bash, funktioniert alles einwandfrei.

Irgendwelche Ideen, was hier los ist? Danke!

Antwort1

Als dieArch Wiki macht deutlich:

Achtung: Um sich anmelden zu können, muss die Login-Shell eine der in /etc/shells aufgeführten sein, andernfalls lehnt das PAM-Modul pam_shell die Anmeldeanforderung ab.Verwenden Sie insbesondere nicht den Pfad /usr/bin/bash anstelle von /bin/bash, es sei denn, es ist in /etc/shells richtig konfiguriert.

cat /etc/shells                         
#
# /etc/shells
#

/bin/sh
/bin/bash

Antwort2

Wenn bashin /bin/bashund /binund /usr/binnicht miteinander verknüpft sind, kann das Anmeldeprogramm die Shell nicht starten, wenn Sie einen falschen Pfad zur Bash angeben.

Wenn die Binärdateien miteinander verknüpft sind, müssen Sie sie bearbeiten, /etc/shellsum beide Varianten einzuschließen.

verwandte Informationen