修改rpm中的文件重新打包
1.安装rpmrebuild 和安装rpmbuild
rpmrebuild下载链接:https://sourceforge.net/projects/rpmrebuild/files/rpmrebuild/2.12-1/
rpmbuild直接用yum安装 :
yum install rpm-build
2.配置rpm编译目录
vi ~/.rpmmacros %_topdir /data/rpmbuild
保存。
3.创建目录解压rpmrebuild文件到/data/rpmbuild中
mkdir -p /data mkdir -p /data/rpmbuild mkdir -p /data/rpmbuild/BUILDROOT mkdir -p /data/rpmbuild/SPECS cd /data/rpmbuild tar -zxvf rpmrebuild-2.14.tar.gz
4.安装准备重新打包的rpm
rpm -ivh xxxxxx.rpm
5.反编译提取SPEC文件
#查看rpm安装名称
rpm -qa|grep xxx cd /data/rpmbuild
#ccc 为查看的rpm安装名称
./rpmrebuild.sh -s SPECS/abc.spec ccc
6.替换或修改rpm包中的文件
## 解压原版RPM包
rpm2cpio xxxxxx.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中的文件重新打包的更多相关文章
- linux下修改jar中的文件
解压修改后再打包 解压: jar xvf xxx.jar 打包: jar cvfm0 xxx.jar META-INF/MANIFEST.MF ./ 注: -m参数可以将 一个具体的mainfest文 ...
- Python批量修改Excel中的文件内容
import osimport xlrdfrom xlutils.copy import copydef base_dir(filename=None): return os.path.join ...
- Linux中的文件压缩,打包和备份命令
压缩解压命令 gzip 文件 -c : 将压缩数据输出到屏幕,可用来重定向 -v 显示压缩比等信息 -d 解压参数 -t 用来检验一个压缩文件的一致性看看档案有没错 -数字 : 压 ...
- 修改ubuntu中usr文件夹的权限后,sudo后出现sudo:must be setuid root问题的解决方案
无意之间,使用sudo chmod -R 777 /usr命令修改了usr文件的所有者,导致sudo:must be setuid root问题的出现,即sudo命令无法使用.网上介绍的方法差不多都相 ...
- 修改Unity中Lua文件的默认打开程序
项目中引用了XLua,而Lua文件又是以txt文件结尾的,当修改系统的扩展脚本编辑器为vs后双击lua文件(xx.txt)默认也使用vs打开了,无提示的黑白文本编辑 昨办? -. 后来看到网上有写Un ...
- 搭建的flask项目,若修改项目中的文件,项目没有reload,除非重启主机,解决方法如下
1.博主本人前面有发过一篇博文如何搭建flask项目,可以去查看. 解决办法:加入一句 touch-reload=项目目录在uwsgi.ini 2.测试没问题
- 『学了就忘』Linux软件包管理 — 44、在RPM包中提取文件
目录 1.RPM包中文件的提取 2.在RPM包中提取文件的操作 (1)cpio命令介绍 (2)提取RPM包中文件 1.RPM包中文件的提取 为什么要做这个事呢? 在操作Linux系统的时候误删除一个文 ...
- 修改Myeclipse中项目在tomcat上发布的名称
1.从网上找的,但是没有用 2.直接修改工作空间中的文件
- jar命令+7z:创建,替换,修改,删除Jar, war, ear包中的文件
虽然现在已经有各种智能的IDE可以为我们生成jar包,war包,ear包,甚至带上了自动替换,部署的功能.但一定会有那么些时候,你需要修改或是替换jar包,war包,ear包中的某个文件而不是整个重新 ...
随机推荐
- 手机web——自适应网页设计(html/css控制)【转】
一. 允许网页宽度自动调整: "自适应网页设计"到底是怎么做到的?其实并不难. 首先,在网页代码的头部,加入一行viewport元标签. <meta name="v ...
- 基于开源CA系统ejbca community 6.3.1.1构建私有CA管理数字证书
最后更新于2017年01月24日 一.为什么 为什么写这篇文章?ca是什么?数字证书是什么?ejbca又是什么? 让我们从http与https说起.http是超文本传输协议(HyperText Tra ...
- 无废话--Mac OS, VS Code 搭建c/c++基本开发环境
无废话,直接上步骤. 1) 安装 xcode. 打开App Store,搜索xcode,进行下载安装. 2)执行命令: xcode-select --install 安装命令行工具. 3)安装VS C ...
- Linux vi/vim编辑器常用命令与用法总结
(一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便. ...
- Eclipse中使用Maven搭建SSM框架
Eclipse中不使用Maven搭建SSM框架:https://www.cnblogs.com/xuyiqing/p/9569459.html IDEA中使用Maven搭建SSM框架:https:// ...
- redis 初识
架构 sharding redis 集群是主从式架构,数据分片是根据hash slot(哈希槽来分布) 总共有16384个哈希槽,所以理论上来说,集群的最大节点(master) 数量是16384个.一 ...
- 4.alembic数据迁移工具
alembic是用来做ORM模型与数据库的迁移与映射.alembic使用方式跟git有点类似,表现在两个方面,第一个,alemibi的所有命令都是以alembic开头: 第二,alembic的迁移文件 ...
- 服务器性能测试工具 ---- nmon
一.下载nmon 根据CPU的类型选择下载相应的版本: http://nmon.sourceforge.net/pmwiki.php?n=Site.Downloadwget http://source ...
- 新建项目到Jenkins中
在以Jenkins为镜像创建Docker容器时,我们在jenkins的dockerfile文件中写明了要安装Docker Compose,目的也是在Jenkins容器中借助Docker Compose ...
- springboot~如何去掌握它(新手可以看看)
springboot~如何去掌握它 主讲:仓储大叔 每讲40分钟 架构图 graph LR App-->A Web-->A A(zuul proxy)-->B(eureka serv ...