如何重新创建Linux上已经安装在系统上的RPM?

有帮助吗?

解决方案

您正在使用什么版本的RPM?如果您使用的是较新的,我有一个可能对您有用的技巧。

RPM的较新版本 交易安全回滚选项;只需使用-Repackage命令,它将生成一个包含原始安装的所有特质废话的软件包。请注意,您必须实际做某事(例如rpm -e -repackage rpm_goes_here,它将删除原件,同时制作一个应该可以还原的包(在制作副本之后),但是如果您期望它能很好地工作,我有一座您可能想购买的桥梁),因此,如果您没有完整的备份,这有点信念。

涉及一些配置,您需要在对关键的事情上尝试此操作之前进行测试测试,但这可能会起作用。

其他提示

基本上,您必须执行以下操作:

1]创建一个带有所有标题的.SPEC文件[ http://www.rpm.org/max-rpm/s1-rpm-build-creating-spec-file.html ]

您将必须使用RPM -Q -QueryFormat“”才能从已安装的RPM中获取标头。例如。 rpm -q --queryformat "Release: %{RELEASE}\n" installed_rpm

为了使文件填充 %files 部分使用 rpm -ql 命令。

2]运行 rpmbuild -bb specfile 生成RPM文件。

重新创建RPM的最佳方法是从源RPM中进行。伟大的教程 这里.

deltarpm 软件包可以做到这一点:

deltarpm包含旧版本和新版本的rpm之间的区别,这使得可以从deltarpm和旧版本中重新创建新的rpm。您不必拥有旧RPM的副本,deltarpms也可以与已安装的rpms一起使用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top