执行nginx报错,找不到库./sbin/nginx: error while loading shared libraries: libcrypto.so.6: cannot open share

来源:互联网 发布:算法 布料裁剪问题 编辑:程序博客网 时间:2024/04/29 21:24

在工作过程中,部署项目安装的nginx执行报错,找不到库../sbin/nginx: error while loading shared libraries: libcrypto.so.6: cannot open shared object file: No such file or directory


由错误提示可以看出缺少libcrypto.so.6

通过命令:ldd $(which/usr/local/nginx/sbin/nginx)  (ldd检测某条命令需要哪些共享库文件的支持)


(注释:在 ldd 命令打印的结果中,“=>”左边的表示该程序需要连接的共享库之 so 名称,右边表示由 Linux 的共享库系统找到的对应的共享库在文件系统中的具体位置。默认情况下,/etc/ld.so.conf 文件中包含有默认的共享库搜索路径。)

根据提示nginx程序需要连接的共享库libcrypto.so.6没有,通过ls ‘/lib64/ libcrypto.so.6’也可验证没有

首先想到的yum 安装libcrypto.so.6

通过测试yum install libcrypto.so.6或yum groupinstall libcrypto.so.6均无法完成安装,如下图


提示被锁定无法完成安装

没办法只有看看能不能下载rpm进行安装,经过百度发现此类库包含在openssl的rpm包中,如图


通过yum install openssl* 安装了相应的库,如下图


通过ldd $(which /usr/local/nginx/sbin/nginx) 再次检测,对应库已经正确指向,如下图


执行命令  [root@test nginx]# ./sbin/nginx –t      检测nginx显示正常,如下图


问题搞定,分享给大家……

1 0