VM私の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をシェルとして設定できるようになりました。
Sudo chsh -s "$(command -v zsh)" "${USER}"
このドキュメントをご覧ください: ログインシェルの変更
追加する必要があります/usr/local/bin/zsh
〜/etc/shells
。
最初に、zsh
が有効なシェルとしてリストされているかどうかを確認します
cat /etc/shells
zsh
がリストにない場合は、インストールしてください。たとえば、apt
を使用する場合
Sudo apt-get install zsh
もう一度、ステップ1を実行して、zsh
のパスを確認してください。私の場合、/usr/bin/zsh
と/usr/zsh
の両方がリストされています。 @StéphaneChazelasがコメントで述べたように、シェルを最初からコンパイルしてインストールする場合は、/etc/shells
にパスを追加してください。
シェルを変更する
chsh -s /usr/bin/zsh
man page から:
-s, --Shell SHELL
ユーザーの新しいログインシェルの名前。このフィールドを空白に設定すると、システムはデフォルトのログインシェルを選択します。
ログアウトして再度ログインします。