【问题标题】:how to patch changes to an rpm file如何修补对 rpm 文件的更改
【发布时间】:2016-04-11 06:38:40
【问题描述】:

我有一个第三方 rpm (rabbitmq-server-3.5.4-noarch.rpm),我需要在这个 rpm 中对静态文件(文本文件)进行一些文本更改根据我的组织政策。 在将其安装到我的服务器之前,我需要进行更改。有人可以指导我这样做吗?

我尝试了 rpm2cpio 命令,但只能看到控制台上显示的内容,但我需要对 rpm 内的文本进行更改。

【问题讨论】:

  • 这是个坏主意……首先,您不应该更改别人的许可证;这很可能不是你的决定。其次,RPM 被明确签署以阻止您修补它们。
  • 谢谢,但更改是在此 rpm 使用的开源许可证描述文件上。并且知道按照他们的建议修改许可文本是合法的。

标签: patch rpm rhel


【解决方案1】:

afaik 没有办法像这样修补 rpm。我建议:

  • 获取源 rpm (.src.rpm)
  • 安装源 rpm
  • 修补您的许可证文本文件
  • 重新构建一个新的 rpm(最好使用另一个版本号)

【讨论】:

  • 谢谢!!,是的,这行得通,能够生成 srpm 和二进制文件,但版本编号有一些额外的字符。新建的 rpm "rabbitmq-server-3.5.4-2.el6.noarch.rpm" 在 version# 后面有 'el6' 字符。不知道这是从哪里来的。在我看到的 .spec 文件中也观察到 Release: 2%{?dist}, 可能是“{?dist} is that 'el6'.
  • Inderdaad 总名称来自 name-version-release... Hierover IT 是将您生成的 RPM 与原始 RPM 区分开来的好东西,因此一些额外的字母或数字是完美的。这不会改变 RPM 的工作方式...
  • 不客气。如果我的回答对您有所帮助,请考虑接受此答案,以便其他人看到您的问题已解决...
猜你喜欢
  • 2011-07-26
  • 2018-10-20
  • 2020-08-13
  • 2011-03-22
  • 2016-06-17
  • 2012-12-10
  • 2020-12-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多