千家信息网

如何把常用脚本制作成RPM包

发表于:2024-10-29 作者:千家信息网编辑
千家信息网最后更新 2024年10月29日,如何把常用脚本制作成RPM包?针对这个问题,今天小编总结这篇有关RPM包制作的文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。redhat系列的linux使用RPM来管理安装软件很方便
千家信息网最后更新 2024年10月29日如何把常用脚本制作成RPM包

如何把常用脚本制作成RPM包?针对这个问题,今天小编总结这篇有关RPM包制作的文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。

redhat系列的linux使用RPM来管理安装软件很方便,把自己常用的脚本变成RPM包之后,用起来就方便了。

  1. 要制作RPM包,首先要看一下RPM包的内容(可以忽略)

....还是不看了把,看不懂....

2.环境准备:

软件包依赖:rpm-build rpmdevtools

3.设置 制作RPM包 的环境

直接执行命令:rpmdev-setuptree 即可在当前用户的家目录生成如下目录结构

4.拷贝自己的脚本到相应目录

(简单介绍一下我的那三个脚本的功能:
customOS.sh:设置历史命令格式,终端(PS1)显示之类的
scanport.sh :扫描目标主机的可用TCP端口
setRM.sh :当rm -rf 删除的目标 大小小于10M,就把目标放入到/tmp目录下

5.配置SPCE文件(重点)

在SPEC目录下,编译ddcw.spec

ddcw.spec内容参考如下:

Name: ddcw #名字
Version: 2019 #版本
Release: 1125
Summary: this is test RPM

Group: Applications/System
License: ddcw
URL: https://blog.51cto.com/10888845

#Requires:
Requires:grep #依赖,即安装这个软件所需的其它RPM包

%description #描述
this is set ddcw some habit

%prep #安装前所需要做的事情
echo -e "\033[1;41;33m pre install NOTHING\033[0mprep"

%build #这个我也不知道
echo -e "\033[1;41;33m build NOTHING\033[0mprep"

%install #安装,即把自己的脚本放到那个位置
#echo -e "\033[1;41;33m install NOTHING\033[0mprep"
mkdir -p %{buildroot}/tmp/ddcw
install -m 744 scanport.sh %{buildroot}/tmp/ddcw/scanport.sh
install -m 744 setRM.sh %{buildroot}/tmp/ddcw/setRM.sh
install -m 744 customOS.sh %{buildroot}/tmp/ddcw/customOS.sh

%post #安装之后的工作,(因为我的脚本自带安装功能,即执行脚本他会自动安装)
sh /tmp/ddcw/scanport.sh
sh /tmp/ddcw/setRM.sh
sh /tmp/ddcw/customOS.sh

%files #文件
/tmp/ddcw/scanport.sh
/tmp/ddcw/setRM.sh
/tmp/ddcw/customOS.sh

%postun #卸载操作,即运行 rpm -e 软件包 的时候执行的命令
mv /usr/bin/scanportDDCW /tmp
sed -i "/alias rm='\/bin\/rms'/d" /etc/profile >/dev/null
sed -i "/export HISTTIMEFORMAT=/d" /etc/profile >/dev/null
sed -i "/export DISPLAY=/d" /etc/profile >/dev/null
sed -i "/export PS1=/d" /etc/profile >/dev/null

%changelog #对于我来说,没啥用

6.执行打包命令

rpmbuild -bb SPECS/ddcw.spec

7.检查测试

打包成功后,会在 RPMS/x86_64/ 目录下生成改RPM包

我换一台机器测试这个RPM包:

再验证一下功能(根据自己脚本测试,我的测试出来是OK的):

卸载试一下(也是木的问题的)

关于把常用脚本制作成RPM包的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

脚本 目录 制作 命令 软件 测试 常用 内容 功能 更多 目标 问题 文件 文章 环境 软件包 帮助 生成 不错 易行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中兴通讯大数据软件开发 qq服务器保存聊天记录时间 数据库设计案例题目大全 软件开发专业可以考一建吗 企业数据库程序制作 简述服务器虚拟化的核心技术 网络安全的ppt背景图 爱思服务器没有迅雷下载 设计软件开发要求 天津渣打环球软件开发面试 数据库查询设计器函数和表达式 重庆沙城网络技术有限公司 广东启明软件开发有限公司 深圳第三方软件开发 唐山网络安全比赛 软件开发app哪家正规 文件管理服务器web 青少年安全教育和网络安全 银川办公软件开发联系电话 10年嵌入式软件开发薪资待遇 体重计算器数据怎么加入数据库 胶州管理系统软件开发企业 画出网络安全通用模型图片 巴适游戏服务器不可用 国产实时数据库系统公司 3ds版的我的世界玩服务器吗 什么是互联网的主根服务器 网络安全生产大检查汇报 计算机网络技术由什么组成 数据库集群安全
0