2017-10-26 4 views
0

は、これらのコマンドが実行された:インストール中にubuntuで壊れたglibcを回復するには?作業のUbuntu 16.04システムで

$ wget https://ftp.gnu.org/gnu/libc/glibc-2.26.tar.gz 
$ tar -xvzf glibc-2.26.tar.gz 
$ mkdir build_gcc && cd build_gcc 
$ ../glibc-2.26/configure --prefix=/usr 
$ make 
$ sudo checkinstall 

、エラーが生成されました。その後

Makefile:106: recipe for target 'install-symbolic-link' failed 

ではなく、単一のコマンドは、セグメンテーション結果として、実行することができました失敗。

明らかに、glibcは、悪いバイナリで破損/上書きされています。今すぐライブのUbuntuのフラッシュから起動し、libc6を再インストールしようとするとシステムを回復しようとしています。使用apt-get -o RootDir

$ chroot <partition_path> 
  • :これはセグメンテーションフォルトでパーティションの結果にchrootしようとして、助けにはならなかった

    $ sudo apt-get -o Dir=<partition_path> install libc6=2.23-0ubuntu3 
    $ sudo apt-get -o Dir=<partition_path> install libc6 
    

    を:

    1. ダウングレードのlibc6と再びアップグレード:これらのattemtpsを行いました:

      $ sudo apt-get -o RootDir=<partition_path> install libc6=2.23-0ubuntu3 
      … 
      Chrooting into <partition_path> 
      E: Sub-process /usr/sbin/dpkg-preconfigure —apt || true received a segmentation fault 
      E: Failure running script /usr/sbin/dpkg-preconfigure —apt || true 
      

      このように、破損した環境に突入するため、失敗しました。

    システムの復旧方法を教えてください。

  • +0

    間違ったサイト。代わりに[ubuntu.se]または[su]を探しています。このサイトは、一般的なコンピュータやOSのサポートではなく、プログラミングに関連する質問のためのサイトです。 –

    答えて

    1

    使用apt-get download libc6パッケージを取得するには、その後、

    dpkg -x libc6*.dpkg /partition_path 
    

    それを "インストール" します。

    あなたのアサーション「明らかに、glibcが不正なバイナリで破損したり上書きされてしまった可能性があります。たぶん起こったのはlibc.so.6が新しいビットを持っているのに対して、ld-linux.soはそうしなかった、またはその逆です。彼らはは常にと一致する必要があります。