Linux运维篇-yum命令报错 /lib64/libcurl.so.4相关

ops/2024/9/23 6:21:52/

目录

  • 项目场景:
  • 问题描述
  • 原因分析:
  • 解决方案:

项目场景:

centos7,8,同样也适用openEuer,Kylin等redhat系的国产化操作系统


问题描述

在使用yum命令时报错:请添加图片描述
主要报错信息为:

error: /usr/lib64/libcurl.so.4: symbol SSLv3_client_method version OPENSSL_1_1_0 not defined in file libssl.so.1.1 with link time reference

原因分析:

该错误是/usr/lib64中的动态链接库无法识别和链接,对此所采取的解决方法也是十分的简单,那就是将其加入到系统环境路径下。

大多数导致这个问题的原因是因为使用源码编译的方式升级了openssh和openssl,往往发现这个问题时,系统ssh已经出现故障,然后想使用yum来安装之前版本的openssh和openssl,但是由于yum不能用,于是才来网上寻找答案,这算是一个比较常见的系统问题,但是也会难倒一大片的运维工程师,往往采用简单的重装解决问题。问题确实被解决了,但是,不努力去处理故障,你的能力就不会有成长,你也只是个装机器的工具人。

LD_LIBRARY_PATH是Linux系统的环境变量,用来指定查找共享库(动态链接库)除默认路径以外的其它路径。移植程序时经常需要使用一些特定的动态库,而编译好的动态链接库放在自己建立的目录里。当执行函数动态链接.so文件时,文件不在缺省目录中:/usr/local/lib和/usr/lib,可以指定环境变量LD_LIBRARY_PATH添加新的路径名。

解决方案:

执行如下两条命令:

export LD_LIBRARY_PATH=/usr/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH

然后就需要对编译安装的openssh和openssl软件做删除操作,之后使用yum方式重新安装。
如果重启系统之后发现使用yum依旧报错,那这时候就需要查看/etc/ld.so.conf ,如果不确定本地机器配置是否正确,最简单的方法就是找一台相同的系统环境对比来看。

/etc/ld.so.conf 记录了编译时使用的动态库的路径,也就是加载so库的路径。默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件,而通常通过源码包进行安装时,如果不指定–prefix会将库安装在/usr/local目录下,而又没有在文件/etc/ld.so.conf中添加/usr/local/lib这个目录>。这样虽然安装了源码包,但是使用时仍然找不到相关的.so库,就会报错。也就是说系统不知道安装了源码包。

还需要知道ldconfig这个程序,位于/sbin下,它的作用是将文件/etc/ld.so.conf列出的路径下的库文件缓存到/etc/ld.so.cache以供使用,因此当安装完一些库文件,或者修改/etc/ld.so.conf增加了库的新的搜索路径,需要运行一下ldconfig,使所有的库文件都被缓存到文件/etc/ld.so.cache中,如果没做,可能会找不到刚安装的库。

机器不是人,不会独立思考,所以也没那么多弯弯绕绕,只是你没有找到问题的关键,所以问题才很棘手,理清了过程其实没有那么难;但是和人打交道就不一样了,不知道会在哪里坑你一把,哈哈,题外话,跑偏了。


http://www.ppmy.cn/ops/96854.html

相关文章

Springboot企业人事管理系统---附源码121727

摘 要 由于数据库和数据仓库技术的快速发展,企业人事管理系统建设越来越向模块化、智能化、自我服务和管理科学化的方向发展。人事管理系统对处理对象和服务对象,自身的系统结构,处理能力,都将适应技术发展的要求发生重大的变化。…

SpringSecurity认证鉴权流程

SpringSecurity认证鉴权流程 SpringSecurity的认证流程SpringSecurity的鉴权流程将用户交给Spring Security管理主要涉及以下几个步骤: SpringSecurity的认证流程 用户请求: 用户向应用程序发起请求,通常是访问受保护的资源(例如&…

《AOP实战》— 自定义注解

承接上文(传送门 —>《面试必考》 — AOP-CSDN博客),在被面试官拷打的时候,会被问到一个致命问题:“你了解aop吗?有具体的使用经验吗?” 你:......... 言尽于此,此篇…

MySQL中的distinct和group by哪个效率更高?

前言 大家好,我是月夜枫~~ 一、distinct和group by的区别 1.1.作用方式和应用场景 ‌group by和‌distinct的主要区别在于它们的作用方式和应用场景。 group by用于对数据进行分组和聚合操作,通常与聚合函数(如COUNT、SUM、AVG等&#xf…

【HeadFirst 设计模式】单例模式的C++实现

一、案例背景 书中给了一个巧克力工厂的例子,但是个人觉得关于单例模式书中给的例子过于简单,想要深入了解单例模式的小伙伴可以去看看这篇博客:【设计模式】单例模式的前世今生 二、案例分析 在很多时候,我们期望代码在运行过…

证书|“机器学习工程师”来了,由工业和信息化部教育与考试中心颁发,含金量高

“机器学习工程师”职业技术考试是由工业和信息化部教育与考试中心推出人才考核标准,在互联网、零售、金融、电信、医学、旅游等行业均有涉及,是专门从事数据采集、数据分析、机器学习、人工智能并能制作业务报告、提供决策的新型数据分析人才所需要的技…

Docker无法拉取镜像解决方案

vi /etc/docker/daemon.json添加如下配置 {\ "registry-mirrors": \["<https://hub.uuuadc.top>", "<https://docker.anyhub.us.kg>", "<https://dockerhub.jobcher.com>", "<https://dockerhub.icu>&q…

解锁黑科技!百度AppBuilder助你秒变开发者,轻松实现文心一言

在数字化浪潮席卷全球的今天&#xff0c;人工智能&#xff08;AI&#xff09;和大模型技术正以前所未有的速度改变着我们的世界。从自然语言处理到图像识别&#xff0c;从智能推荐到自动化决策&#xff0c;大模型以其强大的数据处理能力和学习能力&#xff0c;正成为推动科技创…