web-dev-qa-db-ja.com

ZSHが削除され、再ログインできません

それで、私はzshをインストールしました、そして、私はそれが好きでありませんでした。だから私はapt-get remove zshをしました

その時点から、再ログインできません。ユーザーをクリックすると、ログイン画面に戻ります。 Guest sessionでのみログインできます。

私のユーザーのデフォルトシェルはzshであり、もう存在しないため、問題が発生したと思います。

ゲストユーザーのデフォルトシェルを変更するゲストセッションからそれを再インストールするにはどうすればよいですか?

ctrl+alt+f2/6でログインしようとしても、ユーザーとパスワードを入力します。ログインは成功しますが、ログインに戻ります。

何か案は?

13
tubu13

ゲストユーザーには、Sudoまたはpkexecを実行する権限が付与されていません。これらは(別のユーザーのシェルを変更するために必要です).

だから私に起こっている唯一の解決策は ルートシェルへのブート であり、ルートとしてユーザーのシェルを変更します:

chsh -s /bin/bash user

userはユーザーのユーザー名です。

16
kos

ルートとしてログインするか、ルートシェルを起動して、/ etc/passwdのシェルエントリを「/ bin/sh」に編集します。その後、自分で再度ログインして、そこから変更することができます。

2
Ted Cahall

それで、@ kosが言ったことに加えて..

何らかの理由でsource ~/.profileを.bashrcファイルに追加しました(理由はわかりません。どこかで読んでください)そして、.profileファイルは.bashrcをロードし、循環ロードを引き起こしました!.

source.. + @kosソリューションを削除することでうまくいきました!

1
tubu13

Zshのアンインストールで問題が発生するユーザー向け。以下の手順に従ってください。

  1. 復旧モードでルートとしてログインします。あなたはこの答えでそれを行う方法を見ることができます。 https://askubuntu.com/a/92558/104228
  2. ルートとしてログインした後。 /etc/passwdを開きます。ユーザーエントリを見つけて、/usr/bin/zshから/bin/shに変更します。ファイルを保存し、通常の手順として再起動します。通常どおりログインする必要があります。
  3. Ubuntuを再起動した後。シェルの外観が非常に悪いことがわかります。このコマンドchsh -s /bin/bashを実行します。パスワードを入力して入力します。あなたのシェルはすぐに良くなります。
  4. Sudo apt-get purge --auto-remove zshと入力して、zshの別の依存パッケージを消去します。

このステップが、私と同じ問題を抱えている他の人を助けることを願っています。

PS。私の英語は第一言語ではありません。あなたが私を理解できることを願っています。

1
EThaizone Jo