error: /lib64/libpthread.so.0:

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

你可能感兴趣的:(linux,运维,服务器)