chsh -s / usr / bin / zsh가 작동하지 않습니다 chsh명령을 사용하여 쉘을 zsh로

chsh명령을 사용하여 쉘을 zsh로 영구적으로 변경하려고하는데 작동하지 않습니다.

zsh는 apt를 통해 설치되며 bash 프롬프트 터미널에서 직접 호출하면 정상적으로 작동합니다. 그러나 기본적으로 터미널에 zsh를로드 할 수 없으며 chsh가 이상한 일을하고 있습니다.

$ echo $SHELL
/bin/bash
$ which zsh
/usr/bin/zsh
$ chsh -s /usr/bin/zsh
Password:
$ echo $SHELL
/bin/bash
$ grep kurtosis /etc/passwd
kurtosis:x:1000:1000:kurtosis,,,:/home/kurtosis:/usr/bin/zsh

chsh가 / etc / passwd를 올바르게 변경했지만 $ SHELL env 변수는 변경하지 않은 것으로 보입니다. 따라서 새 터미널은 항상 zsh가 아닌 bash에서 시작합니다.

이 문제를 해결할 위치를 잘 모르겠습니다. .bashrc쉘이 지정 될 때까지 호출되지 않더라도? 도움을 주셔서 감사합니다.



답변

이러한 변경 사항을 적용하려면 다시 로그 아웃해야합니다. / etc / passwd 파일에 정의 된 쉘은 로그인 쉘입니다 🙂 따라서 실제로 로그인해야합니다.