Linux使用ldconfig命令后导致基础命令无法使用 错误:“ls: error while loading shared libraries: librt.so.1“

当Linux安装Boost库后,使用ldconfig刷新库连接时,所有基础命令无法使用


如果遇到这种问题,千万不要关闭ssh连接,如果关闭则无法再连接上。


报错如下:

[root@localhost /]# ls -l
ls: error while loading shared libraries: librt.so.1: cannot open shared object file: No such file or directory
[root@localhost /]# find
find: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory
[root@localhost /]#      ls -a
ls: error while loading shared libraries: librt.so.1: cannot open shared object file: No such file or directory

上述问题仅给出几个命令使用出错的信息,会出错的所有基本命令如下:
Linux下的基本命令

查找基础命令的命令为 :which ls
[root@localhost bin]# which ls
alias ls=‘ls --color=tty’
/bin/ls
上述/bin/ls 中bin为所在目录,也就是cd /bin


刚开始我的思路是既然丢失了连接,那么我们重新 ln -s即可,但很遗憾 ln 命令也同样丢失了连接,此时尝试使用 sln命令发现此命令还可以使用。


同时通过百度发现这篇文章:Linux之libc.so.6软链接错误导致ls等基础命令无法使用,通过这篇文章我发现 pwd,cd命令可以使用,这篇文章讲解了ls的恢复过程,参考此篇文章恢复方法,也是我们将要使用的恢复方式,但重点在于怎么找到你需要重新建立连接的过程。


命令如下:
sln /lib64/libc-2.5.so /lib64/libc.so.6
sln /lib64/ld-2.5.so /lib64/ld-linux-x86-64.so.2
sln /lib64/libm-2.5.so /lib64/libm.so.6

首先lib-2.5.so是具体的库,后边的libc.so.6是连接,需要找到libc-2.5.so、ld-2.5.so、libm-2.5.so所在文件夹,有些人是在 /usr/local/lib64目录中,有些在/usr/lib64目录下,ls命令无法用怎么办?
使用cd命令,cd /usr/lib64 不回车,按tab键会补全此目录下所有文件显示。
xshell可以CTRL + F可以查询屏幕信息,没用xshell可以补全后复制到本地编辑器查找这些需要的动态库,首先版本可能不同,所以查找时只能找 libc、ld、libm这几个前缀名称,确定好版本后,使用命令:

sln /lib64/libc-"你的版本号".so /lib64/libc.so.6
sln /lib64/ld-"你的版本号".so /lib64/ld-linux-x86-64.so.2
sln /lib64/libm-"你的版本号".so /lib64/libm.so.6

/lib64/libc.so.6这个也按照上述查找方式查找到具体位置,然后将命令更换成你的具体路径即可。

  • 13
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误提示表明在执行ls命令时,系统无法找到libselinux.so.1共享库文件。这可能是由于缺少该库文件或者库文件路径配置错误导致的。根据引用\[1\]中的错误信息,可以尝试以下解决方法: 1. 确认libselinux.so.1库文件是否存在。可以使用以下命令进行查找: ``` find / -name libselinux.so.1 ``` 如果找到了该文件,可以尝试将其路径添加到系统库文件路径中。 2. 如果库文件确实不存在,可以尝试重新安装libselinux.so.1库文件。具体的安装方法取决于你使用的操作系统和软件包管理器。例如,在Ubuntu上可以使用以下命令进行安装: ``` sudo apt-get install libselinux1 ``` 3. 如果以上方法都无效,可以尝试重新配置库文件路径。可以通过编辑/etc/ld.so.conf文件或者在/etc/ld.so.conf.d/目录下创建一个新的配置文件来添加库文件路径。然后使用以下命令更新库文件缓存: ``` sudo ldconfig ``` 请根据具体情况选择适合的解决方法,并确保按照正确的步骤进行操作。 #### 引用[.reference_title] - *1* *3* [Cent7.5误删除libselinux.so.1文件后的修复方法](https://blog.csdn.net/weixin_41796409/article/details/97397055)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [mongod: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No s](https://blog.csdn.net/ximaiyao1984/article/details/126645383)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值