web-dev-qa-db-ja.com

chsh -s / usr / bin / 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(シェルが指定されるまで呼び出されない場合でも)任意の助けに感謝します。

22
Kurtosis

これらの変更を有効にするには、再度ログアウトする必要があります。/etc/passwdファイルで定義されているシェルはlogin Shellです:-)したがって、実際にログインする必要があります。

31
January