centos:openssl升级

升级

  1. 系统默认提供的版本
$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core) 

$  openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017


$ yum remove openssl #删除旧的
  1. 下载最新的openssl
wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz
  1. 解压并编译安装
tar -zxvf openssl-1.1.1c.tar.gz
cd openssl-1.1.1c
./config --prefix=/usr/local/openssl   #如果此步骤报错,需要安装perl以及gcc包
make && make install

问题

openssl version提示错误,动态库找不到

如下:
在这里插入图片描述

方法:建立软连接

ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
 
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

动态库正常,如下:
在这里插入图片描述

openssl version 提示找不到命令

因为新的ssl路径配置没生效,需要重新配置下

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
 
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
 
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
 
ldconfig -v

POD document had syntax errors at /usr/bin/pod2man line 69. make: *** [install_docs]

错误如下:

cms.pod around line 457: Expected text after =item, not a number
cms.pod around line 461: Expected text after =item, not a number
cms.pod around line 465: Expected text after =item, not a number
cms.pod around line 470: Expected text after =item, not a number
cms.pod around line 474: Expected text after =item, not a number
POD document had syntax errors at /usr/bin/pod2man line 69.
make: *** [install_docs] Error 1

解决方法:

执行:

rm -f /usr/bin/pod2man 

重新编译安装即可。

error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory

问题:

 ./hik 
./hik: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory

解决:

]$ locate libssl.so.1.0.2k
/usr/lib64/.libssl.so.1.0.2k.hmac
/usr/lib64/libssl.so.1.0.2k
[oceanstar@192 lib]$ ln -s /usr/lib64/libssl.so.1.0.2k /usr/lib64/libssl.so.1.0.0

error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory

问题:

$ ./hik 
./hik: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory

解决:

$ ln -s /home/oceanstar/workspace/clion-2020.1.1/bin/gdb/linux/lib/libiconv.so.2 /usr/lib64/libiconv.so.2
$ locate  libiconv.so.2
/home/oceanstar/workspace/clion-2020.1.1/bin/gdb/linux/lib/libiconv.so.2

warning: libssl.so.10, needed by /usr/lib64/mysql/libmysqlclient.so, may conflict with libssl.so.1.0.0 【解决不了】

项目场景:

onvif需要openssl,mysqlclient需要openssl,但是两者要求的版本不一致,报错

问题描述:

/usr/bin/ld: warning: libssl.so.10, needed by /usr/lib64/mysql/libmysqlclient.so, may conflict with libssl.so.1.0.0
/usr/bin/ld: warning: libcrypto.so.10, needed by /usr/lib64/mysql/libmysqlclient.so, may conflict with libcrypto.so.1.0.0

原因分析:

工程库连接错误,但是由于系统中此库已经存在,只能考虑库版本不一致问题。在此之间走了较多的弯路,eg:创建软连接,添加环境变量等。

解决方案:

通过升级openssl版本解决此问题(解决不了)

其他:查看某个程序的链接库

$ ldd hik
        linux-vdso.so.1 =>  (0x00007ffe7e1a9000)
        libAudioRender.so => /home/oceanstar/CLionProjects/hik/lib/libAudioRender.so (0x00007f1e16355000)
        libssl.so.1.0.0 => not found
        libcrypto.so.1.0.0 => /home/oceanstar/CLionProjects/hik/lib/libcrypto.so.1.0.0 (0x00007f1e1603d000)
        libHCCore.so => /home/oceanstar/CLionProjects/hik/lib/libHCCore.so (0x00007f1e15a29000)
        libhcnetsdk.so => /home/oceanstar/CLionProjects/hik/lib/libhcnetsdk.so (0x00007f1e165e0000)
        libhpr.so => /home/oceanstar/CLionProjects/hik/lib/libhpr.so (0x00007f1e150bb000)
        libNPQos.so => /home/oceanstar/CLionProjects/hik/lib/libNPQos.so (0x00007f1e14cce000)
        libPlayCtrl.so => /home/oceanstar/CLionProjects/hik/lib/libPlayCtrl.so (0x00007f1e145b9000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f1e143a3000)
        libSuperRender.so => /home/oceanstar/CLionProjects/hik/lib/libSuperRender.so (0x00007f1e1409b000)
        libanalyzedata.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libanalyzedata.so (0x00007f1e13e3c000)
        libHCAlarm.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCAlarm.so (0x00007f1e13cd3000)
        libHCCoreDevCfg.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCCoreDevCfg.so (0x00007f1e13b64000)
        libHCDisplay.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCDisplay.so (0x00007f1e139cd000)
        libHCGeneralCfgMgr.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCGeneralCfgMgr.so (0x00007f1e13767000)
        libHCIndustry.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCIndustry.so (0x00007f1e13577000)
        libHCPlayBack.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCPlayBack.so (0x00007f1e1341b000)
        libHCPreview.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCPreview.so (0x00007f1e132d7000)
        libHCVoiceTalk.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libHCVoiceTalk.so (0x00007f1e1319f000)
        libiconv.so.2 => not found
        libStreamTransClient.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libStreamTransClient.so (0x00007f1e12fbb000)
        libSystemTransform.so => /home/oceanstar/CLionProjects/hik/lib/HCNetSDKCom/libSystemTransform.so (0x00007f1e12ccf000)
        libmysqlclient.so.18 => /usr/lib64/mysql/libmysqlclient.so.18 (0x00007f1e127cf000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f1e124c8000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f1e121c6000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f1e11fb0000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f1e11be3000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f1e119df000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f1e117c3000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f1e115bb000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f1e113b6000)
        libGL.so.1 => /lib64/libGL.so.1 (0x00007f1e1112a000)
        libX11.so.6 => /lib64/libX11.so.6 (0x00007f1e10dec000)
        libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f1e10bdc000)
        libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f1e1091d000)
        libssl.so.10 => /lib64/libssl.so.10 (0x00007f1e106ab000)
        libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007f1e10248000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f1e1655c000)
        libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f1e10016000)
        libXext.so.6 => /lib64/libXext.so.6 (0x00007f1e0fe04000)
        libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f1e0fb4e000)
        libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f1e0f926000)
        libpng15.so.15 => /lib64/libpng15.so.15 (0x00007f1e0f6fb000)
        libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f1e0f4ae000)
        libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f1e0f1c5000)
        libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f1e0efc1000)
        libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f1e0ed8e000)
        libXau.so.6 => /lib64/libXau.so.6 (0x00007f1e0eb8a000)
        libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f1e0e97a000)
        libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f1e0e776000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f1e0e55d000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f1e0e336000)
        libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f1e0e0d4000)

centos7 安装 openssl和openssl升级

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
对于CentOS系统的openssl升级,你可以按照以下步骤进行操作: 1. 首先,更新系统的软件包列表和已安装软件包。打开终端窗口,执行以下命令: ``` sudo yum update ``` 这将更新系统中已安装的软件包到最新版本。 2. 下载最新的openssl软件包。你可以从openssl官方网站(https://www.openssl.org/source/)下载最新版本的openssl源码包。选择适合你的系统版本的稳定版本进行下载。 3. 解压下载的openssl源码包。在终端窗口中,使用以下命令解压下载的源码包(假设源码包名为openssl-x.x.x.tar.gz): ``` tar -zxvf openssl-x.x.x.tar.gz ``` 4. 进入解压后的openssl目录。使用以下命令进入解压后的目录: ``` cd openssl-x.x.x ``` 5. 配置openssl编译选项。执行以下命令配置编译选项: ``` ./config --prefix=/usr/local/openssl ``` 这将指定openssl的安装路径为`/usr/local/openssl`,你也可以根据需要修改安装路径。 6. 编译并安装openssl。使用以下命令编译并安装openssl: ``` make sudo make install ``` 这将编译并安装openssl到指定的安装路径。 7. 更新系统的动态链接库缓存。执行以下命令更新动态链接库缓存: ``` sudo ldconfig ``` 8. 验证openssl版本。执行以下命令验证openssl的安装和版本: ``` openssl version ``` 如果显示的版本号与你下载的最新版本一致,说明openssl升级成功。 请注意,在升级openssl之前,确保备份重要的系统文件和数据,并在操作过程中小心谨慎。此外,根据你的具体情况和需求,可能需要额外的步骤或配置。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值