31

私たちのサーバーでは、へのシンボリックリンクlibc.so.6が削除されました。現在、システム内のバイナリはどれも機能しません。これを修正するために、私は試しました:

/bin/ln -s /lib/libc-2.11.3.so /lib/libc.so.6

予想通り、これは私に与えます:

/bin/ln: error while loading shared libraries: libc.so.6: 
    cannot open shared object file: No such file or directory

私も試しました:

/lib/ld-linux-x86-64.so.2  --inhibit-rpath /lib/libc.so.6 \
   --library-path /lib/libc-2.11.3.so \
   /bin/ln -s /lib/libc-2.11.3.so /lib/libc.so.6

同じ結果で。さらに失敗した試みには、cp、mv、cat が含まれます。

私は ssh 経由で接続していますが、このセッションを閉じた後は別のセッションを開くことができないと思います。このシステムを修正する方法はありますか (おそらく bash ビルトインを使用)?

[編集] 私がした:

while read line; do echo $line; done < /lib/libc-2.11.3.so > libc.so.6

ファイルをコピーして試してみました:

/lib/ld-linux-x86-64.so.2  --inhibit-rpath libc.so.6 --library-path . \
  /bin/ln -s /lib/libc-2.11.3.so /lib/libc.so.6

そして得た:

/bin/ln: error while loading shared libraries: ./libc.so.6: ELF file OS ABI invalid
4

9 に答える 9

35

単純に実行できますldconfig。ほとんどのディストリビューションは、これを静的バイナリとして出荷しています。

于 2012-09-03T14:38:45.577 に答える
13

試す:

LD_PRELOAD=/lib/libc-2.17.so ln -s /lib/libc-2.17.so /lib/libc.so.6

注: 実際のバージョンはライブラリによって異なります。

于 2014-01-05T01:55:40.887 に答える
5

KnoppixなどのライブCDを使用して起動し、実行中のライブシステムから「壊れた」システムでディスクをマウントした後、欠落しているリンクを修正します。

于 2012-09-03T14:17:03.053 に答える
4

注、64 ビットの場合:

LD_PRELOAD=libc-2.13.so ln -s libc-2.13.so libc.so.6

これは私にとってうまくいきました

もちろん、そのディレクトリにいない場合は、次のようになります。
LD_PRELOAD=/lib/x86_64-linux-gnu/libc-2.13.so ln -s /lib/x86_64-linux-gnu/libc-2.13.so /lib/x86_64-linux-gnu/libc.so.6

于 2014-05-08T16:49:33.853 に答える
3

以前に ls コマンドを実行したことがあり、libc のバージョンがわかっている場合は、

ldconfig -l -v /lib64/libc-2.x.so

xあなたのバージョンはどこで動作しますか。バージョンによっては、lib64 または lib になる可能性があることに注意してください。

私はこれをやっただけでうまくいきました。

つまり、リンクを削除しないでください。悪いアイデア。

于 2015-02-06T00:01:30.663 に答える
2

以下の回答、どうもありがとうございました。ルートIDでうまくいきました。より高いバージョンとリンクするためにリンクを解除しましたが、リンクを解除libc.so.6した後、突然 libc.so.6 サーバーが応答しなくなりました。 ln -sコマンドが機能していませんでした。他のユーザーはサーバーに ssh できませんでした。しかし、以下のコマンドを実行すると、うまくいきました。(libcバージョンがサーバーに存在する場合)サーバーは正常に動作し始めました。

以下は正しいコマンドであり、ライフセービングも....

LD_PRELOAD=/lib/libc-2.17.so ln -s /lib/libc-2.17.so /lib/libc.so.6

注: 実際のバージョンはライブラリによって異なります

于 2018-09-18T12:54:40.020 に答える