rpmbuild命令RPM包制作kafka示例SPEC
kafka的自定义安装路径RPM包制作
# 编写SPEC
cat kafka.spec
BuildArch: noarch
Name: kafka_2.11
Version: 2.1.0
Release: 1
License: Apache License v2.0
Group: Development/Libraries
Summary: This is a Kafka RPM installation package
URL: www.ksyun.com
Source0: %{name}-%{version}.tar.gz
Source1: kafka.service
BuildRoot: %{_topdir}/BUILDROOT
Requires: /bin/sh
Requires: /usr/bin/env
#Requires: rpmlib(CompressedFileNames) <= 3.0.4-1
#Requires: rpmlib(FileDigests) <= 4.6.0-1
#Requires: rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: sh-utils
#Requires: rpmlib(PayloadIsXz) <= 5.2-1
#suggest
#enhance
%description
This is a Kafka RPM installation package
%prep
%setup -q
#tar -zxf %{sources}
%install
#mkdir -p $RPM_BUILD_ROOT/usr/%{stack_name}/%{stack_version}/atlas
#mkdir -p $RPM_BUILD_ROOT/usr/%{stack_name}/%{stack_version}/etc/atlas/conf.dist
#
#cp -rp %{_builddir}/%{name}-%{version}/* $RPM_BUILD_ROOT/usr/%{stack_name}/%{stack_version}/atlas
#cp -rp %{_builddir}/%{name}-%{version}/conf/* $RPM_BUILD_ROOT/usr/%{stack_name}/%{stack_version}/etc/atlas/conf.dist
mkdir -m 0755 -p $RPM_BUILD_ROOT/data/apps/kafka
mkdir -m 0755 -p $RPM_BUILD_ROOT/usr/lib/systemd/system
cp -rp %{_builddir}/kafka_2.11-2.1.0 $RPM_BUILD_ROOT/data/apps/kafka/kafka_2.11-2.1.0
if [ ! -f "/usr/lib/systemd/system/kafka.service" ]; then
%{__install} -p -D %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/systemd/system/kafka.service
fi
%post -p /bin/sh
#if [ ! -e "/etc/atlas/conf" ]; then
# rm -f /etc/atlas/conf
# mkdir -p /etc/atlas/conf
# cp -rp /usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/* /etc/atlas/conf
#fi
#/usr/bin/hdp-select --rpm-mode set atlas-server 3.0.1.0-187
#/usr/bin/hdp-select --rpm-mode set atlas-client 3.0.1.0-187
#cp -rp %{Source1} $RPM_BUILD_ROOT/usr/lib/systemd/system/kafka.service
%files
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/bin"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/models"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/models/0000-Area0"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/models/1000-Hadoop"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/models/1000-Hadoop/patches"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/models/2000-RDBMS"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/models/3000-Cloud"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/server"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/server/webapp"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/atlas/tools/migration-exporter"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/atlas-application.properties"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/atlas-env.sh"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/atlas-log4j.xml"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/atlas-simple-authz-policy.json"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/hbase"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/hbase/hbase-site.xml.template"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/currency.xml"
#%dir %attr(0755, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/lang"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/lang/stopwords_en.txt"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/protwords.txt"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/schema.xml"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/solrconfig.xml"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/stopwords.txt"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/solr/synonyms.txt"
#%attr(0644, root, root) "/usr/hdp/3.0.1.0-187/etc/atlas/conf.dist/users-credentials.properties"
#
#%defattr(-,root,root)
/data/apps/kafka
/usr/lib/systemd/system/kafka.service
%defattr(-,root,root)
#######################
#### FILES SECTION ####
#######################
%changelog
%preun
rm -rf /usr/lib/systemd/system/kafka.service
rm -rf /data/apps/kafka
# Build-RPM安装包
rpmbuild -bb kafka.spec
ll ../RPMS/noarch/
-rw-r--r-- 1 root root 60979828 Feb 23 11:29 kafka_2.11-2.1.0-1.noarch.rpm
rpmbuild命令RPM包制作kafka示例SPEC的更多相关文章
- rpm包制作介绍
RPM(Rpm Package Management)在ReadHat等发行版下被用作软件包管理程序,其将某个软件相关的文件置入一个.rpm包中,用rpm命令,我们可以方便地完成Linux下软件安装. ...
- RPM包制作教程
一.RPM介绍 RPM 前是Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:现在应为RPM Package M ...
- rpm包制作(待实验)
作者:firefoxbug 时间:July 18, 2014 rpm包命名规范 对于rpm包的命名符合如下规范. %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm N ...
- RPM包制作方法
一.RPM介绍 RPM 前是Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:现在应为RPM Package M ...
- linux之使用rpmbuild打rpm包
linux之使用rpmbuild打rpm包 前言: 已从事linux运维工作数年,感觉自己还是个小菜鸟,没有大神那么的钻研的精神.只是单纯热爱,喜欢对着黑色的屏幕敲击命令,喜欢这种感觉.为什么要做RP ...
- php-7.1.0 rpm包制作
nginx-1.8.0 rpm包制作见上篇文章:http://www.cnblogs.com/xiaoming279/p/6251149.html spec文件 Name: php Version: ...
- centos7系统之telnet命令rpm包安装
centos7系统之telnet命令rpm包安装 1. 下载安装包 rpm包下载位置:http://vault.centos.org/6.3/os/x86_64/Packages/ [root@ywb ...
- 实战RPM包制作
在开发中经常会用到一些rpm包,但是一直没有自己手动制作过.今天在制作的时候意外地还解决了自己以前一直困惑的问题,就是怎么制作rpm debuginfo包,类似CentOS官网那样的debuginfo ...
- RPM包制作过程(一)
本机环境:centos7,64位 1. 首先安装工具,rpmbuild可能在rpmdevtools里已经包含 #yum install rpm-devel.x86_64 #yum install rp ...
- 【Linux】【Services】【Package】rpm包制作
1. 概念 1.1. BUILD:源代码解压之后存放的位置 1.2. RPMS:制作完成之后的RPM包的存放位置,包括架构的子目录,比如x86,x86_64 1.3. SOURCES:所有的原材料都应 ...
随机推荐
- mysql外键设置失败踩坑记录
把表里面的数据清空再添加 原因 因为外键一定要对应外面那个表的数据,现在添加外键会导致这个外键的值为空,违反了键的非空约定 理解为已有的数据突然多出来个字段,但是不知道值是什么,那就为空了 主键和外键 ...
- 【Python自动化】之特殊的自动化定位操作
今天有时间了,想好好的把之前遇到过的自动化问题总结一下,以后有新的总结再更新 目录: 一.上传文件(4.11) 二.下拉框选择(4.11) 1.Select下拉框 2.非Select下拉框 三.下拉框 ...
- SpringMVC的视图
目录 ThymeleafView 转发视图 重定向视图 视图控制器view-controller SpringMVC中的视图是View接口,视图的作用渲染数据,将模型Model中的数据展示给用户Spr ...
- GitHub Copilot 典型使用场景实践
大家好,我是Edison. 近期我们一直在使用GitHub Copilot协助开发编码工作,总结了一些实际场景的用法,可能在目前网络中很多的博客中都没有提及到,本文一一分享给你. 简介:你的结对编程伙 ...
- 剖析 Redis List 消息队列的三种消费线程模型
Redis 列表(List)是一种简单的字符串列表,它的底层实现是一个双向链表. 生产环境,很多公司都将 Redis 列表应用于轻量级消息队列 .这篇文章,我们聊聊如何使用 List 命令实现消息队列 ...
- 小tips:node版本管理工具nvm
nvm是node版本管理工具 为了解决node各种版本存在不兼容现象 nvm是让你在同一台机器上安装和切换不同版本的node的工具 安装 nvm-windows 最新下载地址: https://git ...
- Oracle 到 MySQL 函数替换方案汇总
常用函数和语法转换 NVL函数 Oracle语法: NVL(COUNT(*), 0) MySQL语法: IFNULL(COUNT(*), 0) 转字符串 Oracle语法: to_char ...
- java基础 -IO流笔记
610,文件的基础知识 文件流 输入流和输出流都是相对 java程序内存 而言 611,创建文件 在D盘下创建文件. package com.hspedu.file; import org.junit ...
- C++ 模板(函数模板与类模板)
模板 模板介绍 C++提供了函数模板(function template).所谓函数模板.实际上是建立一个通用函数,其函数类型和形参类型不具体制定,用一个虚拟的类型来代表.这个通用函数就称为函数模板. ...
- dfs与贪心算法——洛谷5194
问题描述: 有n个砝码,将砝码从大到小排列,从第三个砝码开始,所有砝码均大于其前两个砝码之和,问怎样的砝码组合才可以组合出不大于c的最大重量,输出该重量 输入: 第一行输入两个个整数N,c,代表有N个 ...