端末コマンドが機能しない

端末コマンドが機能しない

libで始まるすべてのファイルを/../から次のフォルダに移動しました。 mv /../lib* /to/some/folder

それ以来、再び戻すことはできませんでした。 -bash: /bin/mv: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory

lsでも、-bash: /bin/ls: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory

答え1

使用するように復元すると、インストールしたときとbusybox同じように、あなたの場合でもうまく機能します。busybox

busyboxは静的にリンクされたバイナリなので、あなたの場合に役立ちますが、これらの欠陥を修正するために静的にリンクされたバイナリを使用する必要はありません。

次のようにすることもできます。

LD_LIBRARY_PATH=/some/path/where/the/libs/are mv ....

動的ランタイムリンカーも移動した場合は、ランタイムリンカーを手動で呼び出す必要があります。どのように機能するかを確認するには、次に電話してください。

man ld.so.1

またはLinuxで

man ld.so

通常、次のコマンドラインが生成されます。

LD_LIBRARY_PATH=/path/to/libs /path/to/libs/ld.so.1  mv ....

Linuxでは、システムで実際に使用されているものに/path/to/libs/ld.so.1置き換えてください。/path/to/libs/ld-linux-x86-64.so.2

通常、呼び出すバイナリが32ビットまたは64ビットのバイナリであることを確認し、正しい動的ランタイムリンカーを呼び出す必要があります。

注:これは2004年以来Solarisの文書化された方法であり、その年からSolarisには静的にリンクされたバイナリはありません。

関連情報