error: /lib64/libpthread.so.0: symbol h_errno_李世龙的技术博客_51CTO博客
问题:ls: relocation error: /lib64/libpthread.so.0: symbol h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time referenc
1.
我使用SSH连接到没有root访问权限的计算机。要安装某些软件,我从计算机上载了库,并将它们放在~/lib远程主机的目录中。
现在,对于我运行的几乎所有命令,我都会收到以下错误(例如ls)或Segmentation fault (core dumped)消息。
ls: relocation error: /lib64/libpthread.so.0: symbol h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference
1.
唯一的命令,我已经成功运行是cd与pwd直到现在。通过使用TAB自动完成功能ls,我几乎可以在目录中找到文件,因此可以在目录中移动。
uname -r还会返回该Segmentation fault (core dumped)消息,所以我不确定我使用的是哪个内核版本。
由于您可以登录,所以没有什么大不了的。大概是您的Shell的启动脚本添加~/lib到中LD_LIBRARY_PATH,并且,其中的不良库~/lib是导致您看到问题的原因。
要解决此问题,请运行
unset LD_LIBRARY_PATH #临时方案
1.
这将允许您运行rm,vim等等。如果合适的话,除去麻烦库和编辑你的启动脚本。
出现的问题:
ls: relocation error: /lib64/libpthread.so.0: symbol h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference
1.
彻底的解决办法:
登录后复制
根据报错的路径执行lib&lib64
vim /etc/profile #永久写入
export LD_PRELOAD=/lib64/libpthread.so.0
export LD_PRELOAD=/lib64/libc.so.6
或者
export LD_PRELOAD=/lib/libpthread.so.0
export LD_PRELOAD=/lib/libc.so.6
source /etc/profile #生效
或者
vim .bashrc #写入
export LD_PRELOAD=/lib64/libpthread.so.0
export LD_PRELOAD=/lib64/libc.so.6
或者
export LD_PRELOAD=/lib/libpthread.so.0
export LD_PRELOAD=/lib/libc.so.6
source /etc/profile #生效
-----------------------------------
©著作权归作者所有:来自51CTO博客作者我不是九爷的原创作品,请联系作者获取转载授权,否则将追究法律责任
error: /lib64/libpthread.so.0: symbol h_errno
https://blog.51cto.com/lwm666/2773648