前段时间我设法擦除/ var / lib / rpm文件夹,基本上包含有关系统中所有rpms的信息
问题摆在我无法查询或使用yum升级
我做了像rpm提到的步骤–rebuild和ll,但它没有帮助
我的纯粹的好奇心知道一种方法,我们可以恢复安装的rpm的数据库
我说好奇,因为服务器运行良好没有它也!
希望任何时候都不要这样做……我为此失去了许多天
提前感谢阅读这篇文章,并考虑解决scheme
问候
阿姆里特
你唯一的机会,如果这个系统足够重要的话,只能重新安装到db:
rpm -Uvh --justdb <package>
您可以使用/root/install.log和/var/log/yum.log来获取安装的RPM列表,或者如果您有类似的系统,则可以从那里获取RPM列表。
也就是说,如果这个系统可能会宕机,我build议重新安装是最好的方法。 否则,请参阅上面的注释。
祝你好运
编辑:我读错了 – 如果你删除了整个/ var / lib / rpm目录你有点弄脏。
你说你已经做了这第一步,但为了将来的参考(和其他任何人遇到这个)
删除/var/lib/rpm/__db.*
然后
rpmdb –rebuilddb
这不是什么大不了的事情,你的系统没有被破坏。 只要运行上面的命令,你应该恢复业务。
如果您保留了备份,那么您可能可以恢复它。 否则,你已经擦掉了RPM数据库的唯一副本。 ( rpm --rebuilddb命令会从其他目录重build该目录中的某些文件。)您的系统基本上已被清理。
我从来没有试过,但你可以尝试build立一个新的空RPM数据库(从全新安装复制?),并重新安装当前安装的所有包在当前安装的版本。 你可以看看你的rpm(或者,也许是yum,如果你正在使用它)日志来确定当前安装的软件包。