LINUX環境構築/玄箱/ログインNG

Last-modified: 2007-01-21 (日) 00:26:30

NFSのサーバの設定をしたが止まってしまったため、
やむをえず強制shutdown(power ボタン長押しoff)をしたら
ログインNG状態になってしまった…orz

kuro1 login: masami
System bootup in progress - please wait
Connection closed by foreign host.

ルートでも入れない
(ルートは入れない設定にしているかもしれない。)

原因

/etc/nologinが作成されていた
nologinの中に上記のコメントが入っていた。
これを作成した人は/etc以下では
init.d/bootmisc.sh (rcS.d/S55bootmisc.sh)
と思われる。

$ sudo grep -R bootup * 2>/dev/null |grep System
init.d/bootmisc.sh:  echo "System bootup in progress - please wait" > /etc/nologin
nologin:System bootup in progress - please wait
nologin.boot:System bootup in progress - please wait
rcS.d/S55bootmisc.sh:  echo "System bootup in progress - please wait" > /etc/nologin

/etc/nologinを消すのは
rc2.d/S99rmnologin
であり、入れない場合に

  • telnetが立ち上がっている(inetdが立ち上がっている)こと
  • sshが切断されること(sshdが立ち上がっていない)こと
  • 死ぬ前に/etc/exportsを修正したこと
    を考えると
  • nfs-kernel-serverで固まっているのでは?と思われる
    ls <==rc2.dをls
    S01kuro_load_wd@  S20canna@            S20lpd@                S89atd@
    S01murasaki@      S20cupsys@           S20makedev@            S89cron@
    S10sysklogd@      S20ddclient@         S20nfs-kernel-server@  S91apache@
    S11klogd@         S20exim@             S20samba@              S99kuro_boot@
    S14ppp@           S20freewnn-jserver@  S20skkserv@            S99rmnologin@
    S15usbmgr@        S20inetd@            S20ssh@
    S19nfs-common@    S20kuroevtd@         S50proftpd@

ひとまず

  • rm /etc/nologin* をする。
  • bootmisc.shで/etc/nologinを作成させないようにする(暫定処理?恒久処理?)
    • bootmisc.shを変更するのではなく、環境変数DELAYLOGINを設定しないようにする。
      設定している/etc/default/rcSを変更する
  • sshの起動をinetdと同じタイミングで行う( S20ssh -> S20inetd_ssh )
  • /etc/exportsの仕込んだ設定行を消す

最終的に

  • /etc/exportsの指定が間違っていた?模様(存在しないディレクトリを指定?)
  • nfs-user-serverをinstallしていなかった(apt-getでインストールした)
  • nfsを起動するためのsuシェルで、/bin,/sbinがPATHに含まれていなかった
    • これはあまり問題ないと思われる。起動時にはPATHがきちんと設定してあるため