首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用rpm重新构建修改rpm

使用rpm重新构建修改rpm
EN

Stack Overflow用户
提问于 2020-04-20 07:14:29
回答 1查看 1.9K关注 0票数 0

我为dev环境创建了一个rpm,并包含指向dev的配置文件。现在,我必须为另一个环境创建rpm,对于该环境,我需要只替换源文件夹中的一个文件,并更新.spec中的引用并重新构建。问题是我没有用于为dev创建rpm的.spec文件。

因此,在搜索时,我看到了rpm重构,我在编辑器中看到了.spec文件。当我给出rpmrebuild命令时,spec文件将在编辑器中打开。

这是文件中的小片段

代码语言:javascript
复制
/root/rpmbuild/SOURCES /root/rpmbuild/SOURCES
%files
%attr(0755, root, root) "/opt/**{replace/with/newfile/path**}"

但是更新它给了我-文件找不到: /root/.tmp/rpmrebuild.2345/work/root/opt/{path/to/newfile}

我不知道为了替换源中的文件及其在.spec中的引用,我是否必须使用rpmrebuild命令和任何--params。没有其他的改变要做。

请指点。

注:我是unix新手。

EN

回答 1

Stack Overflow用户

发布于 2020-04-25 17:21:26

我想你们没有这个包裹的src.rpm。如果您这样做了,那么它是非常容易的,只需安装在rpm -ihv /path/to/src/rpm,就像你要做的任何RPM文件。除非另有规定,否则内容将被提取到~/rpmbuild。规范将在~/rpmbuild/SPECS之下,在~/rpmbuild/SOURCES下的源,等等。

如果您没有src.rpm,而只有RPM本身,请从EPEL repos安装rpmrebuild包,然后:

代码语言:javascript
复制
$ rpmrebuild -e -p /path/to/package

它将在默认编辑器中打开规范。编辑它并保存规范到任何你想要的地方。然后,假设您拥有所有所需的源文件(在规范中使用SourceN指令声明),您可以调用:

代码语言:javascript
复制
$ rpmbuild -bb /path/to/spec

从编辑的规范重新构建RPM。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61316937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档