【摘要】
熟悉Linux的小伙伴都知道,RPM包是Linux软件封装的主流型式之一。是不是觉得制作这种软件包是一件很高大上的事情,其实是一个比较简单的过程。这篇文章,包你学会rpm包的制作,是在同事面前装X的必读奥义。
RPM是Red-Hat Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、suse以及Turbo Linux等Linux的分发版本都有采用。(这段来自百度)
Linux操作系统有个特点就是一切皆文件。所有的软件硬件信息都以文件的形式存放在Linux文件系统中。使用RPM进行软件安装时,相当于把软件包中的文件分发到Linux系统的相应目录下。反过来,我们可以将自己写的一些脚本(如Linux巡检、网卡绑定、安全基线等等)做成一个rpm包,就可以一键安装这些脚本到指定的目录下啦。
【正文】
- 1 资源准备
图中脚本是小马哥写的一些bash脚本,大家可以换成自己的
- 2 rpm软件包制作步骤
1) 将需要制作成rpm包的文件(脚本,文本文件等)上传至虚拟机
2) 安装制作rpm包所需的两个软件包(可用系统iso做yum源进行安装)
# yum install -y rpm-build rpmdevtools
3) 添加软件包制作用户rpmadmin(用户名自定义),并更改软件包属组属者
4) su到rpmadmin用户,并执行rpmdev-setuptree命令生成目录结构
5) 将所有文件移动到SOURCES目录下并用tar进行压缩
6) 编写spec文件
主要指定脚本的安装路径
7) 编写.rpmmacros文件(家目录下)
主要指定文件安装路径;cmigs为调控脚本,将它安装到PATH环境变量中
该文件为模板文件无需修改,可惜当时忘记保存,只能提供图片,大家也可以自行搜索
8) 执行rpmbuild命令创建rpm包
9) 查看生成rpm的情况
rpm包已经生成~
10) 使用root用户安装新生成的rpm包
11) 查看安装后生成的文件
因为cmigs在到了PATH环境变量中,所以可用which查询定位
至此,我们自己的rpm包就制作完成啦~ 你学会了吗?这是小马哥的第一篇文章,以后会在这里分享关于Linux及其运维的一些经验知识,希望喜欢的小伙伴关注一下~
,