重新打包rpm包
1.安装rpmrebuild 和安装rpmbuild
rpmrebuild下载链接: https://sourceforge.net/projects/rpmrebuild/files/rpmrebuild/
rpmbuild直接用yum安装 :yum install rpm-build
2.配置rpm编译目录
vi ~/.rpmmacros
%_topdir /data/rpmbuild
保存。
3.创建目录解压rpmrebuild文件到/data/rpmbuild中
mkdir -p /data/rpmbuild && cd /data/rpmbuild
mkdir ./BUILDROOT
mkdir ./SPECS
cd /data/rpmbuild
mkdir tools
cp rpmrebuild-2.14.tar.gz ./tools/
cd tools
tar -zxvf rpmrebuild-2.14.tar.gz
cd ..
4.安装准备重新打包的rpm(例如:rpm-build)
rpm -ivh rpm-build-4.11.3-40.el7.x86_64.rpm
5.反编译提取SPEC文件
#查看rpm安装名称
rpm -qa|grep rpm-build
cd /data/rpmbuild
#rpm-build-4.11.3-40.el7.x86_64 为查看的rpm安装名称
./tools/rpmrebuild.sh -s SPECS/rpm-build.spec rpm-build-4.11.3-40.el7.x86_64
6.替换或修改rpm包中的文件
## 解压原版RPM包
cd /data/rpmbuild
rpm2cpio rpm-build-4.11.3-40.el7.x86_64.rpm |cpio -idv
根据需求替换修改解压后的文件后
#bbb是通过命令 rpmbuild /data/rpmbuild/SPECS/abc.spec获取
mkdir -p /data/rpmbuild/BUILDROOT/bbb/
通过mv命令把rpm解压出来的文件修改后都移动到/data/rpmbuild/BUILDROOT/bbb/目录下
7.修改abc.spec
vi /data/rpmbuild/SPECS/abc.spec
例如: 原内容为
%attr(0644, root, root) "/usr/lib/123.jar"
删除了这个jar 添加了新的456.jar包权限和0644 用户是root 用户组也是root
删除%attr(0644, root, root) "/usr/lib/123.jar"
增加%attr(0644, root, root) "/usr/lib/456.jar"
保存aba.spec
8.编译RPM包,生成的RPM位置在/data/rpmbuild/RPMS/
rpmbuild -ba /data/rpmbuild/SPECS/abc.spec
来源:关键字排名
重新打包rpm包的更多相关文章
- centos 打包RPM包 ntopng
需要在centos7上,将ntopng及其依赖的包一起打包成rpm包,了解centos7打包. 1.执行: yum -y install rpmdevtools 安装rpm工具 2.接下来执行:rp ...
- RPM包定制
概述 问题:当领导给你 100 台已经安装好系统的服务器,然后让优化,让你提出一个快速部署方案.解答: 1.tar 打包 先编译安装 打包-->分发-->解包(比如 mysql 打包后直接 ...
- 编译wiredtiger rpm包
1.安装rpm-build 使用rpmbuild打包rpm包前,首先安装rpmbuild: yum install rpm-build -y 2.创建打包文件目录 mkdir -p /root/r ...
- FPM简介(定制rpm包)
FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...
- 将 shell 脚本打包到 rpm 包中
下以操作最好在虚拟机上操作:如 Docker 最方便了 1. 安装 rpmbuild yum -y install rpmbuild rpmdevtools -y 2. 生成打包路径 使用 rpmd ...
- 使用FPM打包工具打rpm包
使用FPM打包工具打rpm包 一:安装ruby环境和gem命令 fpm 是 ruby写的,因此系统环境需要ruby且版本必须大于1.8.5 # yum -y install ruby rubygems ...
- rpmbuild 源码打包clickhouse,附带打好的rpm包下载地址
一.下载 clickhouse 源码包 git clone --recurse-submodules -b v1.1.54385-stable https://github.com/yandex/Cl ...
- FPM打包工具 可以把源码包制定为rpm包 是自动化部署的环节
注意部FPM时的环境一定要跟生产环境的系统版本最好是保持一至,我第一次测试没通过,(我在CENTOS7和部属FPM打好的包在Centos6.x和安装,结果失败) 1:安装 FPM打包工具的依赖包: [ ...
- fpm打包神奇rpm包升级python2.7.16
fpm打包神器参考文档:https://www.cnblogs.com/flintlovesam/p/6594635.html FPM的安装:安装ruby环境和gem命令: yum -y instal ...
随机推荐
- 【vim小记】vim的高效移动
我还是推荐所有刚入门vim的朋友先去用vimtutor练习,然后去看vim的帮助文档,写的十分仔细,而且可以马上实战,见效很快,以下的很多示意图都是vim帮助文档里的例子,我觉得很好,就拿出来了. v ...
- Mysql中的读锁,写锁,乐观锁及事务隔离级别和并发问题
mysql读锁,写锁,乐观锁 读锁,也叫共享锁(shared lock) SELECT * FROM table_name WHERE ... LOCK IN SHARE MODE 写锁,也叫排他 ...
- Java开发笔记(一百二十四)AWT绘图操作
前面介绍了如何使用画笔在控件上展示图像,可是图像来源于磁盘图片,无法即兴绘制个性化的图案.所幸画笔工具Graphics不仅能够描绘图像,还支持绘制常见的几何形状,也支持绘制文本字符串,除了绘制图像用到 ...
- windows server系统打印服务配置
系统环境:windows server 2008 R2 Enterprise Service Pack 1 安装内存:8G 系统类型:64位操作系统 目标:在此系统上开启打印服务,可以添加网络打印机 ...
- Governing sand(主席树/贪心)(2019牛客暑期多校训练营(第七场))
示例:输入:25 1 11 10 125 1 23 2 3输出:12 题意:n种树,第i种树有P[i]颗,砍掉每颗树的代价是C[i], 高度是H[i].需要用最小的花费砍掉一些树,让最高的树超过一半. ...
- PB 报表数值列加%
- RabbitMQ延迟消息队列实现定时任务完整代码示例
- node-red File读取好保存
File节点是操作文件的节点 file文件的保存 拖拽 注入节点inject file节点(writes msg.payload to a file)和 debug节点到工作区,并连线 设置file ...
- Python之TensorFlow的模型训练保存与加载-3
一.TensorFlow的模型保存和加载,使我们在训练和使用时的一种常用方式.我们把训练好的模型通过二次加载训练,或者独立加载模型训练.这基本上都是比较常用的方式. 二.模型的保存与加载类型有2种 1 ...
- Programming Principles and Practice Using C++ Notes1
序 0.4 创造性和问题求解 首要目标是帮助你学会用代码表达你的思想2,而不是叫你如何获得这些思想.沿着这样一个思路,给出很多实列,展示如何求解问题. 我们认为程序设计本事是问题求解的一种描述形式: ...