閱讀240 返回首頁    go 阿裏雲 go 技術社區[雲棲]


rpmdb損壞的修複方法

背景:
一次yum做更新的時候,強製終止了該進程,後來再使用yum的時候就報錯了:

error: cannot open providename index using db3 - bad file descriptor

image

   如報錯所述,rpmdb損壞,rpmdb簡單來說是用來存儲一些軟件包的依賴關係,解析安裝過程中的依賴關係的

解決方法:
1,嚐試初始化db

rpmdb --initdb

image

2,嚐試重建db

rpmdb --rebuilddb

image

注:rpmdb 命令用於初始化和重建rpm數據庫
--initdb:初始化RPM數據庫; 
--rebuilddb:從已安裝的包頭文件,反向重建RPM數據庫。

3,查看db文件
ls -l /var/lib/rpm/ |grep db
image

4,刪除db文件,然後測試一下(千萬小心刪除,一定要進到目錄裏麵)

cd /var/lib/rpm/
rm __db.00* -rf

image

5, yum 試下

yum search ssh

image
image
db文件重新生成,也可以search到對應的軟件包了~修複成功!

最後更新:2017-08-13 22:23:12

  上一篇:go  建模工具與Deepgreen/Greenplum的集成(連續更新)
  下一篇:go  解密上帝之手 - 阿裏雲HDB for PG特性(數據改命與任意列高效過濾)