• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:zshがなくてrootでログインできなくなった)

zshがなくてrootでログインできなくなった

このQ&Aのポイント
  • CentOS5.5をインストールして、passwdファイルを書き換え、デフォルトのシェルをzshにしたところ、ログインできなくなりました。
  • Solarisはshをシェルにしてログインまではできますが、CentOSではログインすら許されません。
  • 再インストールを避けたいため、この状況での解決方法が知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

>こういうケースではどうしたらいいのでしょうか。 何通りか手段がありますかね。 ・起動時のGRUBでカーネルパラメータに「init=/bin/sh」を加えて起動する。  shが起動しますので、/etc/passwdを編集してシェルを変更する。  ……ファイルが書き込みできないかもしれません…。 ・インストールメディアを使用して、レスキューモードで起動して/etc/passwdを編集する。  インストールメディアで起動した後のliloのプロンプトで、linux rescueとすることでレスキューモードになるでしょう。 後者の方法がおすすめ…ですかね。

annyg2
質問者

お礼

ありがとうございました。 メディアが手元になかったので、シングルユーザモードで起動してみました。 確かにファイルの書き込みはできなかったのですが、もう一度再起動、カーネル起動時のパラメータのroをrwに変更してみたら編集できました。ありがとうございました。 いろいろ調べてみたら、Linuxにはchshなんてコマンドがあるんですね。passwdを直接書き換えるなんて邪道なんですね。

その他の回答 (2)

回答No.3

クノピックスなどを使ってCDブートし、/etcの載っているファイルシステムをマウントし、シェルを書き換えた後でHDDからブートしなおせば良いのでは?

annyg2
質問者

お礼

ありがとうございまいした。 そういうのがあるんですね。Linuxの世界は広いですね、ホントに。今回は時間がなかったので試せませんでしたが、時期を見てチャレンジしてみたいと思います。

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.2

よく覚えていませんが、シングルモードで起動すれば自動的にログインユーザ「root」で、シェルは「sh」になりませんでしたでしょうか。

annyg2
質問者

お礼

えーとどうだったかな。。。確かbashだったと思います。 ただ、シングルユーザモードで起動すると、rootパスワードが必要ない、ってのは新鮮な驚きでした。いいのか悪いのかはわかりませんが、こういうときは便利ですね。

関連するQ&A