
그래서 흥미로운 문제에 부딪혔습니다. Arch Linux에서 쉘을 사용하는 사용자를 생성하면 /usr/bin
로그인할 수 없습니다. 다음을 사용하여 사용자를 생성합니다.
useradd -m -G wheel -s /usr/bin/bash username
로그인을 시도하면 '잘못된 로그인'이라는 메시지가 표시됩니다. 하지만 /etc/passwd
쉘을 편집하고 변경하면/bin/bash
하면 모든 것이 잘 작동합니다.
여기서 무슨 일이 일어나고 있는지 아이디어가 있습니까? 감사해요!
답변1
다음과 같이Arch Wiki는 명확하게:
경고: 로그인할 수 있으려면 로그인 쉘이 /etc/shells에 나열된 것 중 하나여야 합니다. 그렇지 않으면 PAM 모듈 pam_shell이 로그인 요청을 거부합니다.특히 /bin/bash 대신 /usr/bin/bash 경로를 사용하지 마십시오., /etc/shells에 올바르게 구성되지 않은 경우.
cat /etc/shells
#
# /etc/shells
#
/bin/sh
/bin/bash
답변2
와 가 함께 연결 bash
되어 있지 않으면 Bash에 잘못된 경로를 지정하면 로그인 프로그램이 셸을 시작할 수 없습니다./bin/bash
/bin
/usr/bin
바이너리가 서로 연결된 경우 /etc/shells
두 변형을 모두 포함하도록 편집해야 합니다.