rpm 简单 package 创建demo
安装的工具
yum install -y rpmdevtools
准备环境
主要是初始化,会自动创建rpm 包构建需要的目录
rpmdev-setuptree
编写简单的spec
cd ~/rpmbuild/SPECS/dalong.spec
Name: dalong-demo
Version: 1
Release: 1
Summary: this is a demo
License: fixme
%description
this is a demo app
%prep
# nothing
%build
cat > dalong.sh <<EOF
#!/bin/sh
echo "dalong demo"
EOF
%install
mkdir -p %{buildroot}/usr/bin/
install -m 755 dalong.sh %{buildroot}/usr/bin/dalong.sh
%files
/usr/bin/dalong.sh
%changelog
# nothing
构建
rpmbuild -ba dalong.spec
效果
执行(%prep): /bin/sh -e /var/tmp/rpm-tmp.FiOyqX
+ umask 022
+ cd /root/rpmbuild/BUILD
+ exit 0
执行(%build): /bin/sh -e /var/tmp/rpm-tmp.jyWbrS
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cat
+ exit 0
执行(%install): /bin/sh -e /var/tmp/rpm-tmp.pogwtN
+ umask 022
+ cd /root/rpmbuild/BUILD
+ '[' /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64 '!=' / ']'
+ rm -rf /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64
++ dirname /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64
+ mkdir -p /root/rpmbuild/BUILDROOT
+ mkdir /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64
+ mkdir -p /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64/usr/bin/
+ install -m 755 dalong.sh /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64/usr/bin/dalong.sh
+ '[' '%{buildarch}' = noarch ']'
+ QA_CHECK_RPATHS=1
+ case "${QA_CHECK_RPATHS:-}" in
+ /usr/lib/rpm/check-rpaths
+ /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/redhat/brp-compress
+ /usr/lib/rpm/redhat/brp-strip /usr/bin/strip
+ /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/brp-python-bytecompile /usr/bin/python 1
+ /usr/lib/rpm/redhat/brp-python-hardlink
+ /usr/lib/rpm/redhat/brp-java-repack-jars
处理文件:dalong-demo-1-1.x86_64
Provides: dalong-demo = 1-1 dalong-demo(x86-64) = 1-1
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: /bin/sh
检查未打包文件:/usr/lib/rpm/check-files /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64
写道:/root/rpmbuild/SRPMS/dalong-demo-1-1.src.rpm
写道:/root/rpmbuild/RPMS/x86_64/dalong-demo-1-1.x86_64.rpm
执行(%clean): /bin/sh -e /var/tmp/rpm-tmp.dvCayz
+ umask 022
+ cd /root/rpmbuild/BUILD
+ /usr/bin/rm -rf /root/rpmbuild/BUILDROOT/dalong-demo-1-1.x86_64
+ exit 0
安装
yum install -y ~/rpmbuild/RPMS/x86_64/dalong-demo-1-1.x86_64.rpm
效果
已加载插件:fastestmirror
正在检查 dalong-demo-1-1.x86_64.rpm: dalong-demo-1-1.x86_64
dalong-demo-1-1.x86_64.rpm 将被安装
正在解决依赖关系
--> 正在检查事务
---> 软件包 dalong-demo.x86_64.0.1-1 将被 安装
--> 解决依赖关系完成
依赖关系解决
===============================================================================================================
Package 架构 版本 源 大小
===============================================================================================================
正在安装:
dalong-demo x86_64 1-1 /dalong-demo-1-1.x86_64 29
事务概要
===============================================================================================================
安装 1 软件包
总计:29
安装大小:29
Is this ok [y/d/N]:
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : dalong-demo-1-1.x86_64 1/1
验证中 : dalong-demo-1-1.x86_64 1/1
已安装:
dalong-demo.x86_64 0:1-1
完毕
使用
- 命令
dalong.sh
dalong demo
参考资料
rpm 简单 package 创建demo的更多相关文章
- C#开发微信公众平台-就这么简单(附Demo)转载
C#开发微信公众平台-就这么简单(附Demo) 来源:https://www.cnblogs.com/xishuai/p/3625859.html#!comments 写在前面 阅读目录: 服务号和 ...
- C#中缓存的使用 ajax请求基于restFul的WebApi(post、get、delete、put) 让 .NET 更方便的导入导出 Excel .net core api +swagger(一个简单的入门demo 使用codefirst+mysql) C# 位运算详解 c# 交错数组 c# 数组协变 C# 添加Excel表单控件(Form Controls) C#串口通信程序
C#中缓存的使用 缓存的概念及优缺点在这里就不多做介绍,主要介绍一下使用的方法. 1.在ASP.NET中页面缓存的使用方法简单,只需要在aspx页的顶部加上一句声明即可: <%@ Outp ...
- Maven+SpringMVC+Dubbo 简单的入门demo配置
转载自:https://cloud.tencent.com/developer/article/1010636 之前一直听说dubbo,是一个很厉害的分布式服务框架,而且巴巴将其开源,这对于咱们广大程 ...
- MVC CodeFirst简单的创建数据库(非常详细的步骤)
最近在学习MVC的开发,相信有过开发经验的人初学一个新的框架时候的想法跟我一样最关心的就是这个框架如何架构,每个架构如何分工,以及最最关键的就是如何与数据库通信,再下来才是学习基础的页面设计啊等 ...
- Xamarin.Android再体验之简单的登录Demo
一.前言 在空闲之余,学学新东西 二.服务端的代码编写与部署 这里采取的方式是MVC+EF返回Json数据,(本来是想用Nancy来实现的,想想电脑太卡就不开多个虚拟机了,用用IIS部署也好) 主要是 ...
- ionic2新手入门整理,搭建环境,创建demo,打包apk,热更新,优化启动慢等避坑详解
onic官方文档链接:http://ionicframework.com/docs/ 如果是新的环境会有很多坑,主要是有墙,请仔细阅读每个步骤 文档包含以下内容: l 环境搭建 l 创建demo并 ...
- [.NET] 使用VALIDATIONCONTEXT快速进行模型资料的验证 》简单xml创建-json转xml
[.NET] 使用VALIDATIONCONTEXT快速进行模型资料的验证 在进行WebAPI功能开发的时候,一般传统的验证资料是否合法的方式,都是透过if/else的方式进行判断若是使用Valida ...
- 简单数学算法demo和窗口跳转,关闭,弹框
简单数学算法demo和窗口跳转,关闭,弹框demo <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...
- vue+node+es6+webpack创建简单vue的demo
闲聊: 小颖之前一直说是写一篇用vue做的简单demo的文章,然而小颖总是给自己找借口,说没时间,这一没时间一下就推到现在了,今天抽时间把这个简单的demo整理下,给大家分享出来,希望对大家也有所帮助 ...
随机推荐
- TypeScript基础以及在Vue中的应用
TypeScript推出已经很长时间了,在Angular项目中开发比较普遍,随着Vue 3.0的即将推出,TypeScript在Vue项目中使用也即将成为很大的趋势,笔者也是最近才开始研究如何在Vue ...
- CSS样式表及选择器相关内容(一)
CSS(Cascading Style Sheets)层叠样式表1.CSS级联-CSS层叠:规定在哪个HTML中使用哪个样式. body{ font-size:16px; //body默认字体大小 } ...
- 数据仓库模型ETL架构(DWI/DWR/DM)
1.DWI DWI:数据湖.数据砥柱,一般存放在HDFS 数据仓库的基础数据来源,各种杂七杂八的数据 关键点:数据清洗.数据整合.异常处理.增量获取 ETL:E-数据抽取.数据清洁.格式转换,T-生成 ...
- DataPipeline如何实现数据质量管理?
数据质量管理已经成为数据治理的重要组成部分.高质量的数据是企业进行决策的重要依据. DataPipeline数据质量平台整合了数据质量分析.质量校验.质量监控等多方面特性, 以保证数据质量的完整性.一 ...
- 用navicat操作oracle新建表空间、用户名、密码
转载从:https://www.cnblogs.com/franson-2016/p/5925593.html 首先.我们来新建一个表空间.打开Navicat for Oracle,输入相关的的连接信 ...
- Pandas 数据筛选,去重结合group by
Pandas 数据筛选,去重结合group by 需求 今小伙伴有一个Excel表, 是部门里的小伙9月份打卡记录, 关键字段如下: 姓名, 工号, 日期, 打卡方式, 时间, 详细位置, IP地址. ...
- PHP控制结构if else,while,do while,for,foreach,break ,continue
php中控制结构有 控制结构 判断分支 if else, 三元运算符, switch case, 循环 while do while for foreach 跳出 break continue // ...
- php导出数据到csv
序言 php导出数据到csv是一种很常见的功能,且csv相比于excel文件有其一定的优势,首先csv对数据的行数没有限制,但是excel对数据的行数有一定的限制,因此,csv文件对于导出大量的数据来 ...
- 18道kafka高频面试题哪些你还不会?(含答案和思维导图)
前言 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处 ...
- C.Minimum Array(二分+set)
题目描述: 知识点: lower_bound和uper_bound lower_bound(起始地址,结束地址,要查找的数值) 返回的是数值 第一个 出现的位置. upper_bound(起始地址,结 ...