42991


dpkgの勉強していて、間違って強制的に

[code]

    sudo dpkg -r --force-depends libc6
    
[/code]

を実行してしまいました。その後アプリを立ち上げようとしても

> **** を子プロセスとして起動できませんでした：そのようなファイルやディレトリはありません

とエラーが出てしまい全てのアプリが起動しなくなりました。

これは、もうどうしようもないのでしょうか？


CC BY-SA 3.0
2018-04-06T04:38:59.243
42988
2018-04-06T05:57:59.933
2018-04-06T05:07:31.413
3060
28021
question
linux debian
libc6 をアンインストールしたら、アプリが起動しない


まずは、現在起動中のシェルは終了しない方がよいです。  
（もし終了してしまった場合は、シングルユーザーモードに入り、以下のような作業をすることになります。少し手順が増えて面倒かと思います）  
`busybox` コマンドが存在するならば、起動中のシェルで `busybox sh` を実行し、`libc` に依存しないシェルが起動できます。  
`busybox` にはいくつかの基本的なコマンドが内蔵されていますので、これでリカバリー作業を行います。

例えばDebianであれば `dpkg` も内蔵されていると思いますので、libc6のパッケージを `dpkg` でインストールできます。  
Debianのパッケージは[公式サイト](https://packages.debian.org/ja/)で検索して `wget`
でダウンロードできますし、もしかしたらキャッシュが（`/var/cache/apt/` あたりに？）残っているかも知れません。

* * *

生きているシェルが一般ユーザーのものだけだと、結局はシングルユーザーモードに入るしかないかも知れません。  
シングルユーザーモードに入る方法は、マシンが手元のものか、遠隔のものか、などにより変わります。


CC BY-SA 3.0
2018-04-06T05:16:56.043
42991
2018-04-06T05:57:59.933
2018-04-06T05:57:59.933
3054
3054
42988
answer


libcは、ほぼすべてのプログラムの核となるライブラリのため、アンインストールするとほとんどのプログラムが動作しなくなります。  
Debianのインストールからやり直した方が良いと思います。


CC BY-SA 3.0
2018-04-06T05:25:27.393
42992
2018-04-06T05:25:27.393
28019
42988
answer