ctlファイルが原因でコンピュータが起動しません。

ctlファイルが原因でコンピュータが起動しません。

私はやや厄介な問題に直面していることを発見しました。過去のある時点で、私はコンピュータを起動するたびに起動しようとするソフトウェア(ejabberd、気になる場合に備えて、どちらが重要かは重要ではないと思います)をインストールしました。ずっと後、Erlang / OTP(ejabberdが起動した)で作業している間、私のコンピュータにErlangをインストールするためのより良い(開発用)方法を見つけて、(apt-get installを介して)以前のバージョンを削除しました。後でいくつかのタスクを実行している間、Erlang仮想マシンを起動するために使用されるバイナリerlがまだ私の/ usr / binにあることがわかりました。 「ああ」 - 私は考えました。 "愚かなことは必要ありません。apt-getの削除ではクリーンアップが正しく行われません。 …

...ああ!

今始めようとすると、長い行が見えます。

/usr/sbin/ejabberdctl: 60: exec: /usr/bin/erl: 見つかりません

起動できません。 - 削除できません。起動プロセスを中断し、起動オプションとBIOS設定を変更するオプションが表示されますが、これがトラブルシューティングにどのように役立つかはわかりません。どんなアイデアがありますか?とても感謝しています!

答え1

USBメモリースティックなどの他のメディアから起動します。 DebianまたはUbuntuを使用していると仮定すると、そのディストリビューションのインストールイメージ(シェルに入ることができます)で動作するか、次のものを使用できます。システム回復ディスク(名前に加えて、PXEを介したネットワーク起動を含むさまざまなメディアから起動します。)

シェルを起動して入ったら、ハードディスクのシステムパーティションをインストールします。破損を確認してくださいrm -rf(どのディレクトリでこれを行ったかはわかりませんでした)。

何かが簡単で解決できる場合は、解決してください。それ以外の場合は、システムの一部(小型または大型)を再インストールする必要があります。フルインストールを実行する必要がある場合は、/var/lib/dpkg/statusシステムを元の状態に復元できるように、インストールする前に他の場所にインストールされているパッケージのリストを保存できます(参照)。ディストリビューションのインストールイメージから起動すると便利です。

答え2

重要ではない単一サービス(XMPPデーモンなど)の起動に失敗したため、サーバー全体が起動しないようにしてはいけません。あなたが見ていない他のより重要なものがあるかもしれません。

しかし、一度に1つの質問だけが可能です。今すぐerlang-base(付属のパッケージ)を正しく再インストールする必要があります/usr/bin/erl

apt-get install --reinstall erlang-base

関連情報