我可以重新创建损坏的 RPM 数据库吗?

我可以重新创建损坏的 RPM 数据库吗?

我遇到过 RPM DB 损坏的情况。我知道 RPM DB 有我的系统上安装的软件包的信息,但我想知道:

  • 如何重建它
  • 重建时会发生什么
  • 弄乱 RPM DB 的后果

毕竟,它“只是”跟踪安装的软件包、版本等。对吧?

答案1

的情况下:

    error: rpmdb: damaged header #5904 retrieved -- skipping.

尝试:

    mkdir /var/lib/rpm/old/
    mv /var/lib/rpm/__db* /var/lib/rpm/old/
    rm -f /var/lib/rpm/__db*
    restorecon -Rv /var/lib/rpm     # reset the SELinux security context for /var/lib/rpm/ directory to its default values
    rpmdb --rebuilddb -v

相关内容