解決策 1:
/etc/shells ファイルを確認し、この行が存在しない場合は /bin/zsh をファイルに追加してください。
解決策 2:
/etc/passwd
を確認してください .私の場合、 chsh
で無効なシェルを指定しました それが問題の原因でした。
zsh
から変更しました /bin/zsh
へのシェルとして それで問題は解決しました。
解決策 3:
コードを sudo として実行する必要があります:
sudo chsh -s /bin/zsh
私も同じ問題を抱えていましたが、うまくいきました!
解決策 4:
chsh と入力するたびに、同じ問題に直面しました。 プロンプトを表示するために使用します
chsh: PAM authentication failed
しかし、 /etc/passwd
でいくつかの変更を行うことで解決しました ファイル
Users of kali-linux
ルート端末を開いて /etc/passwd
を変更するだけです この仕事には、pico、nano、または vi エディターを使用できます。私は vi で行っています。
vi /etc/passwd
次に、ユーザー アカウントを検索します。シェルを目的のシェルに変更します新しいユーザーが Linux に存在するシェルを確認するには、入力するだけで、目的のシェルが Linux のディストリビューションにインストールされていることを確認してください
cat /etc/shells
そこにそれらをリストします。シェルをインストールしても /etc/shell
で表示されない場合 /bin/ksh
と仮定して、リンクを作成し、シェルのパスを配置する必要があります /etc/shells
で 手動でファイル...
たとえば、bash を使用していて、それを ksh に変更したいとします
/etc/passwd
のアカウントに移動するだけです ファイルと最後のフィールド編集
/bin/bash
/bin/ksh
へ または /bin/ksh93
(あなたの cat /etc/shells
のように) )
ログアウトしてログインするだけで準備完了です...
他のディストリビューション (たとえば) ubuntu のユーザー向け
入力してください
sudo -H gnome-terminal
(ルート端末を取得するため)
kali-linux ユーザーのような root 端末を持っているので、プロセスは上記と同じです..