"chmod 666 ld-2.17.so"を実行 - どのように修復しますか?

"chmod 666 ld-2.17.so"を実行 - どのように修復しますか?

ld-2.17.so実行可能ファイル自体の権限を変更する方法を理解するには、実行可能ファイルchmod自体の権限を変更できるかどうかを検討してくださいld-2.17.so

私はchmod 666 ld-2.17.soテストcentos 7システムで実行しており、その後はほとんどのコマンドが使用されるため、どのコマンドも実行できませんld-2.17.so

私はこの答えを読んだ。ld-linux.soの実行権限の削除から回復

非常に一般的な答えを提供しますが、具体的な解決策はありません。 Centos7で権限を再び正常にld-2.17.so復元できるキャッシュを見つけることができる場所はありますか?/lib64/ld-2.17.so

編集する:別のコンピューターから影響を受けたコンピューターにscpこのファイルにアクセスしようとしましたが、/lib64/ld-2.17.so許可拒否エラーが発生しました。

事前にありがとう

答え1

ld.so書き込み可能な実行可能ファイルがある場合は、bashを使用してその内容をファイルにコピーできますread

while IFS= read -d '' -r  line; do printf "%s\0" "$line"; done > executable-file < /lib64/ld-2.17.so

例:

bash-4.2$ ll foo
-rwxr-xr-x 1 muru muru 29K Aug 23 13:02 foo*
bash-4.2$ while IFS= read -d '' -r  line; do printf "%s\0" "$line"; done > foo < /lib64/ld-2.17.so
bash-4.2$ ./foo
Usage: ld.so [OPTION]... EXECUTABLE-FILE [ARGS-FOR-PROGRAM...]
You have invoked `ld.so', the helper program for shared library executables.
...

その後、これを使用して以下を実行できますchmod

bash-4.2$ ./foo /bin/chmod
/bin/chmod: missing operand
Try '/bin/chmod --help' for more information.

関連情報