rpm打包sh调用shell_将 shell 脚本打包到 rpm 包中

下以操作最好在虚拟机上操作:如 Docker 最方便了

1. 安装 rpmbuild

yum -y install rpmbuild  rpmdevtools -y

2. 生成打包路径

使用 rpmdev-setuptree ,会自动在用户家目录生成一个 rpmbuild 的文件夹,作为工作路径

cd rpmbuild/SPECS 路径,创建 filename.spec 文件(打包 shell 脚本示例),详细含义查阅相关文档

Name: name

Version:0.1.0Release:1%{?dist}

Summary: 描述

License: 协议

Group: Enterprise/xxx

Vendor:XXXX

Requires: 依赖的软件包%description

描述%prep%files # 想打包的文件,也是你安装时要安装的目录%defattr(-,root,root,-) # 默认权限/etc/abc.sh# 想打包的文件%doc%pre%post%preun # 程序卸载时执行的操作,上面想打包的文件不用写,卸载时会删除.可以在此处删除一些其它文件或其它操作rm -rf /etc/a.confrm -rf /etc/b.conf%changelog

%files 下也可以打包目录

3. 执行打包命令 rpmbuild -bb filename.spec

会报错: error: File not found: /root/rpmbuild/BUILDROOT/name-0.1.0-1.el6.x86_64/etc/abc.sh .此时手动创建下  /root/rpmbuild/BUILDROOT/name-0.1.0-1.el6.x86_64/etc/ 目录,并把你的脚本拷过去.再执行就 OK 了.

rpm包会放在 rpmbuild/RPMS/x86_64 这个路径下.完成

也可以使用 rpmbuild --buildroot=/dir -bb filename.spec 命令,其中 dir 目录最好为空,在其下创建 filename.spec 中想打包的目录,并将文件移动过去.

仅供参考

参考文档:

http://www.cnblogs.com/wjoyxt/p/5554004.html

需要编译的源码包打包:

http://jaminzhang.github.io/linux/use-rpmbuild-to-build-custom-RPM-package  (文中参考链接值得一看)

http://4270819.blog.51cto.com/4260819/862880

http://murongqingqqq.blog.51cto.com/2902694/1396751

官方文档:

https://fedoraproject.org/wiki/How_to_create_an_RPM_package/zh-cn#.E5.85.B3.E4.BA.8E.E6.9C.AC.E6.8C.87.E5.8D.97

原文:http://www.cnblogs.com/zimufeng/p/6506122.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值