打rpm包步骤
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打rpm包步骤相关的知识,希望对你有一定的参考价值。
参考技术A [TOC]步骤略,本文将zabbix_agent安装到/zabbix_agent目录下。
我们计划rpm安装时,安装在/opt/zabbix_agent目录,因此需要修改启动脚本。编辑/zabbix_agent/conf/zabbix_agentd/zabbix_agentd文件修改 BASEDIR=/opt/zabbix_agent
,修改启动配置增加-c参数指定参数文件全路径。 $FULLPATH -c $BASEDIR/conf/zabbix_agentd.conf 。
执行rpmdev-setuptree 命令,会在家目录下生成rpmbuild工作目录。网上推荐使用非root用户制作rpm包。
在SPECS目录执行rpmbuild -bb zabbix_agent.spec名录,制作rpm包。rpm包会生成在/root/rpmbuild/RPMS目录下。
RPMS的下一级目录名字根据spec文件中的配置决定,会与本例有差别。安装后启动服务并查看服务状态。Active: active (running)表示启动成功。
编辑/opt/zabbix_agent/conf/zabbix_agentd.conf文件,修改服务地址等信息,并重启agent。测试是否可以将主机加入监控。
rpm2rpm 打包步骤
文章目录
本文主要介绍将 rpm 包解压后,修改里面的文件,然后重新打包成 rpm 的过程。
准备环境
- 安装rpm-build包
yum install rpm-build -y
- 安装rpmdevtools
yum install rpmdevtools -y
- 创建工作空间
rpmdev-setuptree
查看工作目录
- 创建 BUILDROOT目录
mkdir /root/rpmbuild/BUILDROOT
完整目录结构
解压 rpm 包
- 复制文件
复制需要修改的 rpm 包至 /root/rpmbuild/BUILDROOT/
目录,
- 解压 rpm 包
cd /root/rpmbuild/BUILDROOT
rpm2cpio zookeeper_3_0_1_0_187-3.4.6.3.0.1.0-187.noarch.rpm | cpio -idv
- 提取 spec 文件
rpmrebuild --package --notest-install --spec-only=zookeeper.spec zookeeper_3_0_1_0_187-3.4.6.3.0.1.0-187.noarch.rpm
注:这里用到了rpmrebuild
工具,具体可查看:使用rpmrebuild从rpm包中提取spec文件,有下载链接和使用方法。
- 移动 SPEC 文件
mv zookeeper.spec /root/rpmbuild/SPECS/
- 删除原 rpm 包
rm -rf zookeeper_3_0_1_0_187-3.4.6.3.0.1.0-187.noarch.rpm
修改内容
查看解压后的文件内容,
按自己需要进行修改,
- 如果只是需要替换同名文件,则直接进行替换即可;
- 如果需要增加文件或文件夹,则需要在
zookeeper.spec
中按原有格式添加文件或文件夹; - 如果需要删除文件或文件夹,也需要在
zookeeper.spec
中删除相应的文件或文件夹。 - 如果修改的文件较多,也可以将原有的
%files
内容改为
%files
%defattr(-,root,root,-)
/usr/hdp/3.0.1.0-187
重新打 rpm 包
修改好文件后,重新打包成 rpm 文件,
cd /root/rpmbuild/SPECS
rpmbuild -ba --buildroot /root/rpmbuild/BUILDROOT/ zookeeper.spec
执行完成后在 /root/rpmbuild/RPMS
目录中查看新的 rpm 包
注:本文首发于个人博客网站: http://www.erik-ly.com/
CSDN 社区图书馆,开张营业! 深读计划,写书评领图书福利~以上是关于打rpm包步骤的主要内容,如果未能解决你的问题,请参考以下文章