记录linux升级gcc导致的故障

2060阅读 0评论2019-08-20 fengqiyunyong123
分类:LINUX

   centos7 由于本来的glibc支持版本比较低,需要升级,但是后来遇到很多不兼容的问题,于是作罢。但是导致很多问题,把自己遇到的问题和解决方法分享下,遇到这种问题千万不能重启,不然系统无法启动。

   首先一旦删除了 /lib64/libc.so.6或者指向不兼容的libc的版本,  那么执行其他的命令都会报错  ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory。

   解决方法,删除原来指向错误的文件,重新指向原来的版本。

点击(此处)折叠或打开

  1. LD_PRELOAD=/lib64/libc-2.17.so rm -rf /lib64/libc.so.6
  2. LD_PRELOAD=/lib64/libc-2.17.so ln -sv /lib64/libc-2.17.so /lib64/libc.so.6

    问题二 数据库(或者其他应用)无法启动了,等了半天出来个 显示超时查看日志  [system] Failed to activate service ‘org.freedesktop.PolicyKit1’: timed out , polkit这个服务依赖的glibc有问题,polkit无法启动。解决方法 替换glibstdc++ 版本
     

点击(此处)折叠或打开

  1. rm -rf /lib64/libstdc++.so.6
  2. ln -sv /lib64/libstdc++.so.6.0.19 /lib64/libstdc++.so.6

        systemctl daemon-reload
        systemctl restart polkit.service
         systemctl start mysqld
    搞定,主要原因还是 /lib64/libc.so.6 和/lib64/libstdc++.so.6不存在或者指向版本不正确,需要用上面的方法修改.如果使用上面方法还报错就执行  ldconfig 重新加载库文件.

    
     


    
上一篇:使用scarpy爬取文章并保存为json文本
下一篇:个人笔记--使用sklearn库构建机器学习模型,并使用模型预测