mv /lib目录下的so文件之后,为何linux系统什么事情也做不了了?如何恢复环境呢?

环境信息:centos 7.6 aarch64

因为需要在aarch64位环境运行arm32位程序,所以我手动的往/lib目录下添加了许多arm32位依赖库文件。

程序执行结束后,需要恢复环境,我提取了一组关键字,想通过mv /lib/ld-*.so.* /tmp命令把我添加的arm32位依赖库文件移动到/tmp目录,以恢复环境。

结果,奇怪的事发生了,当我执行完mv /lib/ld-*.so.* /tmp之后,执行ll命令想查看是否还有arm32位的依赖库文件残留时,系统出现下面的错误:

/lib/ld-linux-aarch64.so: not such file

(⊙o⊙)…,我误删了aarch64位的依赖库了吧。赶紧使用mv 命令恢复,结果mv命令执行也是一样的报错。

之后,我尝试了cp ,ln,scp都是一样的错误。

google搜一下,找到了下面一段话:

if you only moved /lib,you can easily recover:

code:

/NEWLIBPATH/ld-linux.so.3 /bin/mv/NEWLIBPATH /lib

扫描二维码关注公众号,回复: 7147991 查看本文章

that ld-linux is magic.

原来,/lib/ld-linux.so可以作为命令运行!关于ld-linux.so的进一步原理和作用,欢迎大家留言区互动,一起讨论学习:)

参考链接:https://www.linuxquestions.org/questions/linux-software-2/i-moved-lib-help-309345/

猜你喜欢

转载自www.cnblogs.com/zhaominmin/p/11442410.html
mv