陈表宁 2019-12-03 16:26 采纳率: 0%
浏览 3226

rpm使用时出错了,求大神

故事的开始是这样的:
服务器是linux

[root@ip-172-31-26-105 ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 6.9 (Santiago)
Kernel \r on an \m

看到的版本是这个
一开始我的yum我把他删除了,我使用把别的正常主机上的yum命令文件拷贝过来,能使用成功,我就执行了一次 yum -y install mariadb mariadb-server
后边再次使用就变成了

[root@ip-172-31-26-105 ~]# yum 
error: bad option 'archcolor' at (null):96
error: dbiOpen: dbapi 1 not available
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

Error: rpmdb open failed

网上的相关教程讲的是把/var/lib/rpm/清下缓存就可以了,我的并不行,后来想着使用rpm安装yum命令

[root@ip-172-31-26-105 test]# rpm -ivh gmp-4.3.1-7.el6_2.2.x86_64.rpm 
BDB2053 Freeing read locks for locker 0x21: 17484/140469886113792
BDB2053 Freeing read locks for locker 0x23: 17484/140469886113792
BDB2053 Freeing read locks for locker 0x24: 17484/140469886113792
BDB2053 Freeing read locks for locker 0x25: 17484/140469886113792
BDB2053 Freeing read locks for locker 0x26: 17484/140469886113792
BDB2053 Freeing read locks for locker 0x27: 17484/140469886113792
warning: gmp-4.3.1-7.el6_2.2.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
rpm: symbol lookup error: /usr/lib64/librpm.so.3: undefined symbol: selinux_status_close

我去网上查了这个关键词,都没有遇到次问题。不知道是哪出了错。

求大神讲下思路

谢谢!!

  • 写回答

2条回答

  • bobhuang 2019-12-03 18:54
    关注

    这条:

    rpm: symbol lookup error: /usr/lib64/librpm.so.3: undefined symbol: selinux_status_close
    

    是因为RPM程序与librpm.so版本不匹配。用yum/rpm来管理软件版本和依赖关系,就是为了避免类似的问题。所以尽量不要自己复制软件进去。
    用yum管理,也可能因为安装了不同版本的rpm库导致类似问题。
    还有一种可能性是 etc/ld.so.conf.d/的配置下,有些.conf路径中包含了另外一个版本的librpm.so,导致系统调用出错。

    如果rpm2cpio命令还能用的话,可以手动下载正确的软件包,再通过rpm2cpio和cpio命令来安装。例如:

    cd /;/usr/lib/rpm2cpio.sh rpm-libs-4.4.1-18.1.i386.rpm | cpio -ivd
    cd /;/usr/lib/rpm2cpio.sh rpm-4.4.1-18.1.i386.rpm | cpio -ivd
    
    评论

报告相同问题?

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示