広告

久々の大トラブル つづき

continue form: [久々の大トラブル]

/etc/rc*.d/の中身が無くなったことにより、ほとんど何もできない状況になってしまった。

再インストールかと考えたけど、インストールしてから、またすべての設定をやり直すのはキツイし、今のデータのバックアップを取るのも難儀しそうなのでなんとか復旧サせることにした。

まず、DebianのインストールCDで立ちあげて、オプションからレスキューモードに入った。
これで、ネットはつながるようになるし、ディスクもちゃんとマウントされた。

で、/etc/rc*.d/の中身をどうやって復活させるか。
/etc/rc*.d/の中身は/etc/init.d/の中のスクリプトのシンボリックリンクなので、/etc/init.d/から生成すればいい。
そこで、移動していた/etc/init.d/の中身を元にもどし、/etc/rc*.d/の中身を生成させる。

/etc/rc*.d/の中身を生成させるには、単純には「initscripts」を設定しなおせばいいみたいだったので

# dpkg-reconfigure initscripts

とやる。
でも、やっぱり、元のinsservのエラーがでる。
かといってどのスクリプトが問題なのか良くわからなかった。

エラーメッセージの上の方を見ると

There is a loop between service ***

というメッセージが出ている。はじめこれはエラーではないと思っていた。
でも、他に手もなかったので、このメッセージを頼りに問題のスクリプトを探してみた。
どうも「checkfs」というのが絡んでいるぽかった。

そのスクリプトだけ、別のディレクトリに移したら、

# dpkg-reconfigure initscripts

がやっと通った。
/etc/rc*.d/の中身も復活している。
で、再起動したら復活!

でも、「checkfs」に絡んでいるのかifupといくつかのものはちゃんと動かない。
ifupに関しては前の記事と同じようにすれば問題は解決されたので、とりあえず今回はおしまい。

Category: [トラブル][update] - 15:47:12


広告

リロード   差分   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS