
Ubuntuのデフォルトのシェルをbashからzshに変更しました。http://github.com/sorin-ionescu/preztoを実行しましたchsh -s zsh
。その後、ログインしようとするとすぐにポップアップ表示され、どのシェルにもログインできなくなりました。gnome ターミナル、xterm から試し、tty1 (++) からログインしようとしました。Alt開こうとするとすぐに閉じてしまいます。CtrlF1
答え1
システムに戻るには、GRUB 内の Linux カーネル行の末尾に数字 1 を追加して、シングル ユーザー モードで起動できます。これを行う方法は、次の U&L Q&A に大まかに説明されています。root のログイン シェルを起動せずに、プロセスを root として起動できますか?。
これを実行すると、root としてプロンプトが表示され、シェルに加えた変更を元に戻すことができるようになります。これにより、システムは正常に動作する状態に戻ります。
ここからは、おそらく、chsh
以前に使用した方法ではなく、ユーザー名を実行することになるでしょう。
答え2
としてログインしますroot
。 がzsh
インストールされていることを確認します。apt-get install zsh
答え3
ターミナルを開いたり、テキスト モードでログインしたりできない理由は 2 つあります。シェル (ユーザー データベースに記録されている) が存在しないか、シェルの構成ファイルに致命的なエラーが発生しているかのいずれかです。
成功した場合chsh
、シェルは存在します (chsh
シェルが許可リストに含まれていることを確認し、Ubuntu のパッケージ管理はインストールされたパッケージに基づいてリストを更新します)。したがって、zsh
実行後にパッケージを削除しない限りchsh -s zsh
(その場合は再インストールするだけです)、このケースは除外できます。
したがって、Prezto から取得した構成ファイルの 1 つにバグがあるか、正しくインストールされていないか、重要な依存関係が欠落している可能性があります。これらの構成ファイルを移動してください。Nautilus などのファイル マネージャーを起動し、ホーム ディレクトリにある次のファイルの名前を変更します (存在する場合)。、、、および。.zlogin
これらがシンボリック リンクである場合は、シンボリック リンクを削除して、後で再作成します。.zlogout
.zprofile
.zshenv
.zshrc
それを済ませたら、ターミナルを開いて、デフォルト設定でzshを使い始めることができます。zshを初めて実行すると、新しいユーザー設定インターフェースが実行されます(https://github.com/sorin-ionescu/prezto)。
chsh -s bash
Prezto の問題を解決するまで、シェルを一時的に bash ( ) に戻します。ターミナル (現在は bash を実行中) を開き、 を実行しますzsh
。.z*
ファイルを元の場所に戻すか、手順 3 に従ってシンボリック リンクを再作成します。次に、zsh
この開いたターミナルで を実行し、エラーの内容を確認します。エラーに情報が含まれていない場合は、 を実行してzsh -x
デバッグ トレースを取得します。
問題が解決し、zsh が起動したら、chsh -s zsh
もう一度実行します。