소스에서 컴파일 한 VM)에 ZSH를 설치했습니다. ZSH의 위치는 /usr/local/bin/zsh
실행할 때 chsh -s /usr/local/bin/zsh
출력 chsh: /usr/local/bin/zsh is an invalid Shell
. 나는 또한 Sudo로 이것을 시도했다. 이것을 어떻게 바꿀 수 있습니까?
/etc/shells
에 zsh를 추가하십시오.
command -v zsh | Sudo tee -a /etc/shells
이제 chsh를 사용하여 zsh를 Shell로 설정할 수 있습니다.
Sudo chsh -s "$(command -v zsh)" "${USER}"
이 설명서를 참조하십시오 : 로그인 쉘 변경
/usr/local/bin/zsh
에서 /etc/shells
.
먼저 zsh
이 (가) 유효한 Shell로 나열되어 있는지 확인하십시오.
cat /etc/shells
zsh
가 표시되지 않으면 설치하십시오. 예를 들어 apt
를 사용하는 경우
Sudo apt-get install zsh
1 단계를 다시 수행하고 zsh
의 경로를 확인하십시오. 제 경우에는 /usr/bin/zsh
및 /usr/zsh
이 (가) 나열되었습니다. 주석에 언급 된 @ Stéphane Chazelas와 같이 셸을 처음부터 컴파일하고 설치하려면 /etc/shells
.
다음을 사용하여 셸 변경
chsh -s /usr/bin/zsh
man page 에서 :
-s, --Shell SHELL
사용자의 새 로그인 셸 이름입니다. 이 필드를 공란으로 설정하면 시스템이 기본 로그인 쉘을 선택합니다.
로그 아웃 한 후 다시 로그인하십시오.