rpmbuild相关内容

/var/tmp/rpm-tmp.ajKra4 (%prep) 的错误退出状态

我遇到了一个奇怪的 RPM 问题,我是新手,所以请耐心等待...我创建了规范文件,当我运行构建时出现错误: /var/tmp/rpm-tmp.ajKra4: line 36: cd: hero-01: No such file or directory错误:来自/var/tmp/rpm-tmp.ajKra4 (%prep) 的错误退出状态 然后我检查那个临时文件,它正试图 CD 到一个 ..
发布时间:2022-01-13 21:41:02 其他开发

禁用 rpmbuild 自动需求查找

rpmbuild 的默认行为似乎是扫描 buildroot 中的每个文件以查找 #!行并将这些解释器添加为硬性要求.是否可以禁用此功能?我遇到过一种情况,人们使用 #!/path/to/local/install/of/something 提交脚本,并且该要求已嵌入到 rpm 中. 我找不到抑制这种行为的命令行或规范文件选项.希望我只是看起来不够努力. 解决方案 我认为问题在 rpm ..
发布时间:2022-01-13 21:11:32 其他开发

根据其他 rpm 前缀的前缀和可重定位 rpm 包

我已经在/opt 中安装了 sample.rpm.我希望 samplw2.rpm 找到 sample.rpm 的重定位路径,并将自身安装在同一位置.规范文件中是否有任何命令或宏可以在安装前检查它? 解决方案 我很确定这是不可能的;文件位置是固定的.最简单的解决方案是将它们放在已知位置,然后在您的 %post 中设置一个符号链接,eg 链接 /opt/sample2 到 /usr/local ..
发布时间:2021-07-10 20:10:54 其他开发

rpm.spec 中的 %attr 不采用 env 变量的值

我有一个 rpm.spec 文件,我必须在其中授予文件的文件权限. 我希望 %attr 在 rpm 安装期间采用 $user 和 $group 值.(我将在其中执行“export user="和“export group=")但它不采用这些值,而是在安装 rpm 时出现语法错误. 我的规范文件中有这样的内容 %pre%个文件%defattr(-,root,root,-) ..
发布时间:2021-07-10 20:10:39 其他开发

如何安装两个不同版本的相同 rpm 并使它们并行工作

目前我正在尝试安装 rpmsecured_soft_2.0.0.rpm 并且我是无法安装它,因为我们已经安装了secure_soft_1.3.0. 要求是我们需要安装两个版本. 复杂性: 这些包又具有依赖的 rpm(很多)以及所有这些相互依赖的 rpm 也有版本例如:secure_soft_1.3.0 仅适用于 1.3 版的软件包,和secured_soft_2.0.0.rpm ..
发布时间:2021-07-10 20:10:33 服务器开发

安装rpm时创建日志文件

在 rpm 规范文件中创建日志文件的最佳方法是什么?我正在创建的服务在非特权用户下运行,因此无法在/var/log/中创建文件. 解决方案 您可以创建 /var/log/myservice/ 目录并使其归您的用户所有.在 %install 或 make install 中:(忽略 buildroot 等) install -d/var/log/myservice -o serviceus ..
发布时间:2021-07-10 20:10:16 其他开发

我们如何重命名 rpm 构建?

我想将 rpm 文件的名称从 oldname-7.x86_64.rpm 更改为 newname-8.x86_64.rpm.我用新名称创建了新的 rpm,但是当我尝试执行 rpm -Uvh newname-8.x86_64.rpm 它抛出以下错误: oldname-7.x86_64 安装中的文件 XXXXX 与包 newname-8.x86_64 中的文件冲突. rpm upgrad ..
发布时间:2021-07-10 20:10:13 其他开发

RPM-Build - 如何在客户端 rpm 安装时打印错误消息

我的要求是,如果 rpm 安装在客户端机器上以任何方式失败,我想在屏幕上打印一些消息.或者在屏幕上显示消息,例如由于任何生成的原因导致 rpm 安装失败.就像其他标准 rpm 给出的一样. 而且我没有在我的 .spec 文件中制作任何 c 文件或 make 命令.我在规范文件本身中所做的一切.plz 建议如何使用规范文件在客户端控制台中打印此类内容. 是的,这不是我所关心的 --tes ..
发布时间:2021-07-10 20:10:09 其他开发

使用 rpm 规范在特定目录中的符号链接

使用spec文件创建的rpm将创建目录“directory1"和/var/lib/directory1中的所有文件. 对于另一个用例,我想在“/var/lib"中创建另一个目录,它应该是指向目录 1 的符号链接. 例如:cd/var/lib/ls -la目录 2 ->目录 1目录 1 如何在不使用 spec 文件中的绝对路径的情况下实现这一点? 解决方案 %installmkdi ..
发布时间:2021-07-10 20:09:49 其他开发

Rpm-build 限制

我是 rpm 打包的初学者,据我所知,由于 cpio 限制,rpm-build 存在文件大小>4GB 的问题.因此,我将包中的大文件与 gnu 拆分为 512MB 的文件 [这是作为 rpmbuild 的一部分完成的,因为大文件是在构建时生成的].我仍然看到错误:“错误:在文件/io1/dm/build/BUILDROOT/pkg/installdir/lib/clfsplitab: cpio: ..
发布时间:2021-07-10 20:09:47 其他开发

在不编译源文件的情况下构建 rpm

我正在尝试使用单个文件的示例 rpm 包. 在我的源文件夹中有 python_test_rpm.tar.gz,它只包含一个 python 脚本文件.但是,该文件不是有效的 python 脚本. 我要做的就是将其打包并将其部署在特定文件夹中.在执行 rpm build 命令时,它在 python 脚本中显示编译/语法错误.如何跳过此验证并进行构建. rpmbuild 命令rpmbu ..
发布时间:2021-07-10 20:09:42 其他开发

如何将 .tar.gz 文件打包成 rpm 包

我在 Redhat Linux 上工作过,我有一个 tar.gz 文件.我想把这个tar.gz文件打包成一个rpm包文件. 在rpm包阶段,我只是想解压tar.gz文件,把所有人员打包到rpm包中,当我在linux服务器上安装rpm包时,它只会简单地将所有文件复制到目标文件夹中. 我已经尝试了很多.这是我的 SPEC 文件的一些代码,但它有问题: %prep%建造密码%安装rm -rf/ ..
发布时间:2021-07-10 20:09:31 其他开发

转速和rpmbuild - 在 %files 部分使用全局环境变量

我一直在为这个而苦苦挣扎.所以我为我的项目写了一个 .specs 文件,一切都很好.rpm 已经构建好了,安装很顺利……但是后来我遇到了一些麻烦,因为现在我必须使用自定义的全局环境变量来设置安装路径. 这将给出一个 %files 部分: %files%defattr(-,root,root)$INSTALLPATH/Crystal/bin/Crystal.jar Crystal 是我的项 ..
发布时间:2021-07-10 20:09:25 其他开发

RPM 规范文件 - 是否可以动态填充规范文件变量

我有一个规范文件.我需要定义一个规范变量,该变量从系统上的一行文件中获取其值. 例如 %define path `cat/home/user/path_file` 在 path_file 中是一行 /var/www/html/hosts 这部分有效.我说从 RPM BUILD 输出开始,有时 ${path} 的值实际上是我的命令 cat/home/user/path_file 有时值 ..
发布时间:2021-07-10 20:09:22 其他开发

如何让 rpmbuild 下载特定 .spec 的所有源代码?

我正在通过 URL 将一些源添加到现有的 rpm .spec 文件,但尚未下载它们.有没有办法让 rpmbuild 下载源代码而不是手动下载? 解决方案 spectool 实用程序来自 rpmdevtools包可以做到这一点.只需安装 rpmdevtools 并将 spectools 指向 .spec,如下所示: spectool -g -R SPECS/nginx.spec 它会将任 ..
发布时间:2021-07-10 20:09:12 其他开发

我构建的 Python RPM 无法安装

因为我必须在通过 kickstart 过程构建的多个 Oracle Linux 服务器上安装多个版本的 Python,所以我想为我们的 yum 存储库构建一个 python rpm.我能够使用“make altinstall"手动构建 Python,它不会安装在您的默认系统 Python 安装上,所以我认为这是可行的方法. 经过多次反复试验,我设法构建了一个以 .bz2 python 2.7 ..
发布时间:2021-07-10 20:09:04 Python

rpmbuild 文件的简单副本

当涉及到放置文件时,正在寻找某人来澄清 %install 宏.我创建了一个没有错误的 RPM,它应该只是从 buildroot 中获取文件并将它们 cp 到/usr/lib.我在 %install 的 SPEC 文件中的内容如下,并且基于 这篇文章.我认为这足以让 rpm 将文件从 buildroot 复制到/usr/lib 位置. 这是我尝试过的,它构建了: %installmkdir ..
发布时间:2021-07-10 20:08:58 其他开发

出现错误时如何退出rpm安装

如果某些条件为假,我正在寻找一种退出 rpm 安装的方法.我在 %pre 部分添加了一个小脚本,如果我的条件失败,它会退出安装. 我面临的问题是我看到 %pre scriptlet 被执行,并且 rpm 安装失败.然而,在它的最后,我得到了这 2 行我不想要的 -- Installed ... 其次是 Complete! 下载包:运行事务测试完成交易测试交易测试成功运行事务缺少文件 zyW ..
发布时间:2021-07-10 20:08:55 其他开发