解rpm包重新打rpm包
借鉴:【rpm包学习2】解rpm包重新打rpm包_rpm包解压-CSDN博客
1.提取spec文件
rpmrebuild -p -n -s wget.spec /root/rpms/wget-1.19.5-10.el8.x86_64.rpm
-p 让你在重建之前修改 .spec 文件。 -n 禁用了清理操作,这样就可以保留当前的构建环境。 -s wget.spec 提供了一个自定义的 .spec 文件。 /root/rpms/wget-1.19.5-10.el8.x86_64.rpm 是你要重建的原始 RPM 包。
2.解压原rpm包
mkdir dst && cd dst #建一个dst目录存放解压出来的文件: rpm2cpio /root/rpms/wget-1.19.5-10.el8.x86_64.rpm | cpio -div
#rpm2cpio 会把RPM 包内容转换成 CPIO 格式的流,这个流可以传递给cpio命令
#-d: 表示创建目录,如果提取的文件需要新目录,它会自动创建。
#-i 表示提取模式,即从 CPIO 文件中提取内容。
#-v 表示详细模式,显示被提取的文件列表。
3.重新编出rpm包
mv wget.spec dst/ cd dst/ #将spec文件和解压出来的文件都放在dst目录下 rpmbuild -ba --buildroot /root/dst/ dst/wget.spec #重新编出rpm包
4.结束
最终新rpm文件位置: /root/rpmbuild/RPMS/x86_64/wget-1.19.5-10.el8.x86_64.rpm

浙公网安备 33010602011771号