一    实验现象

关键字: 'Error: rpmdb open failed'

二    出现原因

问题是: 可能是'什么原因造成'的?是否有一些'忽略锁的常见任务'或导致此的其他问题?

目的:  将问题转为与'特定问题'直接相关的'更规范'的问题

重点:  解决问题是'首要',定位根因是'目标'

可能原因:  '强制结束了yum' 操作而导致 rpm 数据库被'损坏'了-->'过渡使用kill -9'

在RHEL 7中,yum在实际事务运行期间会捕获更多信号,您将看到消息(shutdown inhibited),这应该有助于防止大多数情况下某人或某物中断事务并导致此问题

已知: REEL 5的问题,后续‘6、7、8‘版本'很少出现了'

三    解决策略

(1)知识铺垫

rpmdb:  简单来说是用来'存储一些软件包的依赖关系',解析安装过程中的'依赖关系'的

注:rpmdb 命令用于'初始化和重建'rpm数据库
       
    --initdb:'初始化'RPM数据库 -->'这个不起作用'

    --rebuilddb:从已安装的'包头文件','反向重建RPM数据库'

(2)修复

(0)  尝试清除'缓存'

   yum clean all

(1)  删除损坏的 rpmdb 文件-->删除前'做备份',最好进入'指定目录'删除

   rm /var/lib/rpm/__**

(2)  进行'重建'

   rpmdb --rebuilddb

(3)  更新数据库-->'不会安装'

   yum update

(4)  注意'验证'

  ll /var/lib/rpm/*

 

 
Logo

一站式 AI 云服务平台

更多推荐