rpmrebuild 重新制作 rpm

重新制作 rpm 有两种方式
方式一:
1、rpm2cpio xxx.rpm |cpio -idv
2、修改相关文件
3、rpmrebuild -s my.spec xxx.rpm
4、rpmbuild -ba xxx.spec
方式二:
1、rpmrebuild -m /bin/bash -np rpm/xxx.rpm
2、此时我们得到一个交互shell,
3、比如知道需要修改的文件名为aaa,可以这样操作:
4、find / -name aaa (一般在/root/.tmp/rpmrebuild.xxx)
5、尽情发挥吧,完了退出
6、ctrl+D

注:一般跨操作系统时,生成的rpm 后缀不太准确
比如:原本是 el7 的包,但在centos 8 下编译就生成 el8 的包,针对这个问题,其实就是spec 中指定的 %{?dist} 宏作怪,我们可以通过 rpmbuild -E %{?dist} 查看,需要修改它,创建 ~/.rpmmacros 在里面写入你想生成的后缀宏

[root@ccc64 data]# rpmbuild -E %{?dist}
.ctl3

[root@ccc64 data]# rpmbuild -E %{?dist}
.el7
[root@ccc64 data]# cat ~/.rpmmacros
%dist	.el7


  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值