openGauss2.1.0在openEuler 20.03 LTS SP2 安装后,yum无法使用的问题解决
openGauss2.1.0 在 openEuler 20.03 LTS SP2 安装后,yum 无法使用的问题解决
一、环境描述
操作系统:
openEuler 20.03 LTS
openEuler 20.03 LTS SP2
数据库:
openGauss2.1.0
软件包:
openGauss-2.1.0-openEuler-64bit-all.tar.gz
二、安装过程
安装过程自动创建初始用户 omm。
三、问题
数据库安装使用正常,但是使用 yum,会报错:
[root@node1 ~]# yum list
Traceback (most recent call last):
File "/usr/lib64/python3.7/site-packages/libdnf/common_types.py", line 14, in swig_import_helper
return importlib.import_module(mname)
File "/usr/lib64/python3.7/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1006, in _gcd_import
File "", line 983, in _find_and_load
File "", line 967, in _find_and_load_unlocked
File "", line 670, in _load_unlocked
File "", line 583, in module_from_spec
File "", line 1043, in create_module
File "", line 219, in _call_with_frames_removed
ImportError: /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
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/yum", line 57, in
from dnf.cli import main
File "/usr/lib/python3.7/site-packages/dnf/init.py", line 30, in
import dnf.base
File "/usr/lib/python3.7/site-packages/dnf/base.py", line 29, in
import libdnf.transaction
File "/usr/lib64/python3.7/site-packages/libdnf/init.py", line 3, in
from . import common_types
File "/usr/lib64/python3.7/site-packages/libdnf/common_types.py", line 17, in
_common_types = swig_import_helper()
File "/usr/lib64/python3.7/site-packages/libdnf/common_types.py", line 16, in swig_import_helper
return importlib.import_module('_common_types')
File "/usr/lib64/python3.7/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named '_common_types'
[root@node1 ~]#
四、问题分析
[root@node1 lib64]# ldd /lib64/libcurl.so.4
linux-vdso.so.1 (0x00007fff98577000)
libnghttp2.so.14 (0x00007f06c3221000)
libidn2.so.0 (0x00007f06c3201000)
libssh.so.4 (0x00007f06c3180000)
libpsl.so.5 (0x00007f06c316d000)
libssl.so.1.1 => /opt/software/openGauss/script/gspylib/clib/libssl.so.1.1 (0x00007f06c30db000)
libcrypto.so.1.1 => /opt/software/openGauss/script/gspylib/clib/libcrypto.so.1.1 (0x00007f06c2e14000)
libgssapi_krb5.so.2 (0x00007f06c2dc4000)
libkrb5.so.3 (0x00007f06c2ce4000)
libk5crypto.so.3 (0x00007f06c2cc9000)
libcom_err.so.2 (0x00007f06c2cc3000)
libldap-2.4.so.2 (0x00007f06c2c76000)
liblber-2.4.so.2 (0x00007f06c2c63000)
libbrotlidec.so.1 (0x00007f06c2c54000)
libz.so.1 (0x00007f06c2c3a000)
libpthread.so.0 (0x00007f06c2c19000)
libc.so.6 (0x00007f06c2a58000)
libunistring.so.2 (0x00007f06c28d4000)
librt.so.1 (0x00007f06c28c7000)
/lib64/ld-linux-x86-64.so.2 (0x00007f06c32d9000)
libdl.so.2 (0x00007f06c28c2000)
libkrb5support.so.0 (0x00007f06c28b2000)
libkeyutils.so.1 (0x00007f06c28ac000)
libresolv.so.2 (0x00007f06c2894000)
libsasl2.so.3 (0x00007f06c2873000)
libm.so.6 (0x00007f06c26f0000)
libbrotlicommon.so.1 (0x00007f06c26cd000)
libselinux.so.1 (0x00007f06c26a1000)
libcrypt.so.1 (0x00007f06c2666000)
libpcre2-8.so.0 (0x00007f06c25d4000)
[root@node1 lib64]# nm /opt/software/openGauss/script/gspylib/clib/libssl.so.1.1| grep SSLv3_client_method
确实没有 SSLv3_client_method
五、解决
1 、下载 openssl-1.1.1l,编译:
编译 openssl 增加 enable-ssl3 与 enable-ssl3-method 选项
tar -zxvf openssl-1.1.1l.tar.gz
cd openssl-1.1.1l
./config shared enable-ssl3 enable-ssl3-method
make
make install
检查新编译的文件是否包含 SSLv3_client_method:
[root@node1 lib64]# nm /usr/local/lib64/libssl.so.1.1 | grep SSLv3_client_method
00000000000214f0 T SSLv3_client_method
编译完成后是有 SSLv3_client_method
编译好的库拷贝替换原来的 libssl.so.1.1:
[root@node1 lib64]# cp /usr/local/lib64/libssl.so.1.1 /opt/software/openGauss/script/gspylib/clib/
cp: overwrite '/opt/software/openGauss/script/gspylib/clib/libssl.so.1.1'? y
[root@node1 lib64]#
检查:
[root@node1 lib64]# nm /opt/software/openGauss/script/gspylib/clib/libssl.so.1.1| grep SSLv3_client_method
00000000000214f0 T SSLv3_client_method
至此,该文件正常。
yum测试:
[root@node1 lib64]# yum install -y tree
Last metadata expiration check: 0:29:30 ago on Tue 23 Nov 2021 11:15:02 AM CST.
Package tree-1.7.0-18.oe1.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
修复完成,yum 正常使用
六、深入问题
[root@node1 lib64]# ldd /lib64/libcurl.so.4
linux-vdso.so.1 (0x00007fff98577000)
libnghttp2.so.14 (0x00007f06c3221000)
libidn2.so.0 (0x00007f06c3201000)
libssh.so.4 (0x00007f06c3180000)
libpsl.so.5 (0x00007f06c316d000)
libssl.so.1.1 => /opt/software/openGauss/script/gspylib/clib/libssl.so.1.1 (0x00007f06c30db000)
操作系统默认 libssl.so.1.1 链接到/lib64 目录中,但是安装数据库后
发现 libssl.so.1.1 链接到/opt/software/openGauss/script/gspylib/clib/libssl.so.1.1 ,
怀疑安装脚本有问题。
这里参考曾庆峰老师的解决方案:
“先创建 omm 用户 dbgrp 组,预安装时就不再创建 omm”,安装后,yum 可以使用。
七、最简单方法
按照官方文档正常安装,yum 报错,只需要:
vim /etc/profile
export LD_LIBRARY_PATH=/opt/software/openGauss/script/gspylib/clib:
export PATH=/root/gauss_om/omm/script:$PATH
重启即可。
原因:
估计是安装脚本有问题。
openGauss2.1.0在openEuler 20.03 LTS SP2 安装后,yum无法使用的问题解决的更多相关文章
- openEuler 20.03/21.03 - 华为欧拉开源版(CentOS 8 华为版开源版)下载
开始 openEuler 之旅吧 openEuler 通过社区合作,打造创新平台,构建支持多处理架构.统一和开放的操作系统,推动软硬件应用生态繁荣发展. 好玩的活动停不下来 openEuler 社区不 ...
- Linux --- Ubuntu16.04.5 LTS 虚拟机安装后的软件安装基础操作总结
1. 配置安装源 因为默认是使用Ubuntu官方服务器,国内电脑使用外国服务器较慢,所以需使用国内的服务器(以下清华大学服务器为例). 方法一: (此过程很慢,实在不动就取消吧,加载一部分也够用,以后 ...
- centos7.0安装后ifconfig无法使用
由于使用的最小化安装,需要安装net-tools 输入如下命令: #yum install -y net-tools 即可
- MAC下SecureCRT 8.0.4破解版远程连接工具的安装与配置
一 SCRT的软件的安装:首先访问 http://xclient.info/s/securecrt.html?_=4365bb5cf097dc2c135a57c2ce30b264 选择8.0.4的版本 ...
- win10 + Ubuntu 20.04 LTS 双系统 引导界面美化
版权声明:本文为CSDN博主「ZChen1996」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/ZChen1 ...
- Windows10 + Ubuntu 20.04 LTS 双系统安装 (UEFI + GPT)(图文,多图预警)
版权声明:本文为CSDN博主「ZChen1996」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/ZChen1 ...
- 树莓派安装 Ubuntu 20.04 LTS 碰壁指南
树莓派安装 Ubuntu 20.04 LTS 碰壁指南 设备 Raspberry 4B 4+32G 系统 Ubuntu 20.04 LTS 1.镜像下载与烧录 镜像下载地址:https://cdima ...
- 编译安装 codeblocks 20.03 mips64el
期末考试要用哦,不然谁会愿意去踩这么多坑. qaq 龙梦 Fedora28 中有 codeblocks 17.12,但是 Ctrl-v 粘贴会闪退,导致压根不能用.Bing了一下发现这其实是 code ...
- hadoop 0.20.2伪分布式安装详解
adoop 0.20.2伪分布式安装详解 hadoop有三种运行模式: 伪分布式不需要安装虚拟机,在同一台机器上同时启动5个进程,模拟分布式. 完全分布式至少有3个节点,其中一个做master,运行名 ...
- Build completed with 1 error and 0 warnings in 20 ms
今天运行Idea,好端端的项目居然报了这个莫名其妙的错误Build completed with 1 error and 0 warnings in 20 ms. 首先排查下代码是否有问题,然后我就建 ...
随机推荐
- CentOS系统下,配制nginx访问favicon.ico
sudo vim /etc/nginx/nginx.conf 添加以下配制: # set site faviconlocation /favicon.ico { root html;} 完整配置如下: ...
- 【Azure Redis】中国区Redis在东三区的资源无法在通过门户上与北三区资源之间建立灾备链接
问题描述 为应用启用灾备管理,在北三区建立了一个Azure Redis,同时,在东三区也建立了一个同样的Prem级Redis服务.但是在建立灾备(DR:Disease Recovery)时候,却无法选 ...
- 【Azure 应用服务】遇见“无法创建hybrid connection for App Service”的解决办法
Hybrid Connection (混合连接) 在两个联网应用程序之间启用了双向.请求-响应和二进制流通信以及简单的数据报流.通过混合连接,可以实现应用部署在公网环境中,而数据库保存在本地私网环境中 ...
- Taurus.MVC WebMVC 入门开发教程7:部分视图和页面片段(结束篇)
本系列的目录大纲为: Taurus.MVC WebMVC 入门开发教程1:框架下载环境配置与运行 Taurus.MVC WebMVC 入门开发教程2:一个简单的页面呈现 Taurus.MVC WebM ...
- BeanShell Sampler 前置处理器
一概念: 前置处理器主要作用: 用于修改即将发送的http的请求数据 BeanShell预处理器可以在取样器发送请求之前被执行,可以通过它完成发送请求所需的数据 其中的ctx.vars.props.p ...
- Java 多线程------多线程的创建(2),方式一:继承于Thread类
1 package com.bytezero.threadexer; 2 3 /** 4 * 创建两个分线程,其中一个线程遍历100以内的偶数,另一个线程遍历100以内的奇数 5 * 6 * 7 * ...
- APISIX的安装和简单使用
APISIX 是一个云原生.高性能.可扩展的微服务 API 网关. 它是基于 Nginx 和 etcd 来实现,和传统 API 网关相比,APISIX 具备动态路由和插件热加载,特别适合微服务体系下的 ...
- TornadoFx中的css美化
原文地址:TornadoFx中的css美化 - Stars-One的杂货小窝 TornadoFx中使用类重新对css进行了封装,所以可以用代码的形式来书写样式 说明 除了Text,其他的若是要修改文字 ...
- java多线程的锁整理
参考,欢迎点击原文:https://www.jianshu.com/p/473a3d96a1b0(java锁总结) https://www.jianshu.com/p/dcabdf695557(Ree ...
- Android IjkPlayer解决RTSP延时300ms左右
简介 在上一篇<ijkplayer编译-RTSP>中介绍了,ijkplayer如何进行编译成so库的,以及如何开启rtsp.那么实际在使用的时候会发现延迟不是一般的大. 现在来介绍一下如何 ...