質問: dpkgの勉強していて、間違って強制的に ``` sudo dpkg -r --force-depends libc6 ``` を実行してしまいました。その後アプリを立ち上げようとしても > > **** を子プロセスとして起動できませんでした:そのようなファイルやディレトリはありません > > > とエラーが出てしまい全てのアプリが起動しなくなりました。 これは、もうどうしようもないのでしょうか?
回答: まずは、現在起動中のシェルは終了しない方がよいです。 (もし終了してしまった場合は、シングルユーザーモードに入り、以下のような作業をすることになります。少し手順が増えて面倒かと思います) `busybox` コマンドが存在するならば、起動中のシェルで `busybox sh` を実行し、`libc` に依存しないシェルが起動できます。 `busybox` にはいくつかの基本的なコマンドが内蔵されていますので、これでリカバリー作業を行います。 例えばDebianであれば `dpkg` も内蔵されていると思いますので、libc6のパッケージを `dpkg` でインストールできます。 Debianのパッケージは公式サイトで検索して `wget` でダウンロードできますし、もしかしたらキャッシュが(`/var/cache/apt/` あたりに?)残っているかも知れません。 生きているシェルが一般ユーザーのものだけだと、結局はシングルユーザーモードに入るしかないかも知れません。 シングルユーザーモードに入る方法は、マシンが手元のものか、遠隔のものか、などにより変わります。