需要在centos7上,将ntopng及其依赖的包一起打包成rpm包,了解centos7打包。

1、执行: yum -y install rpmdevtools  安装rpm工具

2、接下来执行:rpmdev-setuptree     rpmdev-setuptree命令默认将再当前用户主目录下创建一个RPM构建根目录结构

一般rpmbuild会在当前用户的主目录下自动建立如上目录结构,如果在你对应用户的构建目录中没有自动建立如上目录,你可以通过手动方式建立。上面目录的使用是这样分配的,SOURCES放置打包资源,包括源码打包文件和补丁文件等;SPECS目录放置SPEC文档;BUILD打包过程中的工作目录;RPMS目录存放生成的二进制包,RPM包根据硬件平台不同分类,i386表示生成i386结构的包将存放在该目录下;SRPMS目录存放生成的源码包;BUILDROOT是制作过程中临时安装程序的地方,里面的文件在制作完成之后会删掉。

3、编写spec脚本,执行vim test.spec会自动生成一个spec的模板,然后自己进行修改

修改之后完整内容如下:

Name:centos_ntopng
Release: 1%{?dist}
Summary:this is a ntopng rpm for centos7
Version:1.0
Group: Applications/Internet
License: GPL
#URL:
Source0: ntopng-dev.tar.gz

#BuildRequires:
#Requires:

%description

%prep
mkdir -p %{buildroot}
%setup -q

%build
%configure
make %{?_smp_mflags}

%install
%make_install

%files
/usr/share/ntopng
/usr/bin/ntopng
/usr/man/man8/ntopng.8.gz
%doc

%changelog

参考资料:

https://my.oschina.net/guol/blog/182310

http://blog.sina.com.cn/s/blog_553c6d4e0101gd3d.html

4、执行命令:

rpmbuild -ba test.spec

遇到的问题:

源码包解压后的目录名称需要和指定的名称一样,通常为 name+版本  centos_ntopng-1.0

centos 打包RPM包 ntopng的更多相关文章

  1. 在centos使用rpm包的方式安装mysql,以及更改root密码

    在centos使用rpm包的方式安装mysql,对于centos官方实际推荐使用yum进行安装,下载安装的方式主要用于内网服务器不能连接外网yum源的情况. 下载包 首先根据centos版本在mysq ...

  2. CentOS 下 rpm包与 yum 安装与卸载

    rpm包的安装:      1.安装一个包 # rpm -ivh 2.升级一个包 # rpm -Uvh 3.移走一个包 # rpm -e 4.安装参数 --force 即使覆盖属于其它包的文件也强迫安 ...

  3. 重新打包rpm包

    1.安装rpmrebuild 和安装rpmbuild rpmrebuild下载链接: https://sourceforge.net/projects/rpmrebuild/files/rpmrebu ...

  4. CentOS安装rpm包时error:Failed dependencies

    CentOS6.5安装rpm包时报错,error:Failed dependencies,解决方法如下: 在安装命令后加两个参数 --nodeps --force ,即安装时不再分析包之间的依赖关系而 ...

  5. centos 使用RPM包安装指定版本的docker-engine

    下面是拿安装docker-engine-1.10.3-1为例: wget https://yum.dockerproject.org/repo/main/centos/7/Packages/docke ...

  6. centos下 rpm包sphinx安装成功提示

    sphinx: /etc/sphinx /usr/share/sphinx Sphinx installed! Now create a full-text index, start the sear ...

  7. RPM包定制

    概述 问题:当领导给你 100 台已经安装好系统的服务器,然后让优化,让你提出一个快速部署方案.解答: 1.tar 打包 先编译安装 打包-->分发-->解包(比如 mysql 打包后直接 ...

  8. 部分rpm包总结描述

    acl-2.2.51-15.el7.x86_64 Commands for Manipulating POSIX(可移植操作系统接口 of unix) Access Control Lists.有ge ...

  9. 编译wiredtiger rpm包

    1.安装rpm-build 使用rpmbuild打包rpm包前,首先安装rpmbuild: yum install rpm-build -y 2.创建打包文件目录 mkdir  -p  /root/r ...

随机推荐

  1. 51Nod 1001 数组中和等于K的数对 Set

    给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数,找出数组A中所有和等于K的数对.例如K = 8,数组A:{-1,6,5,3,4,2,9,0,8},所有和等于8的数对包括(-1,9),(0 ...

  2. PHP7类型约束

    在PHP7之前,函数和类方法不需要声明变量类型,任何数据都可以被传递和返回,导致几乎大部分的调用操作都要判断返回的数据类型是否合格. 为了解决这个问题,PHP7引入了类型声明. 目前有两类变量可以声明 ...

  3. 分布式监控系统Zabbix3.2对数据库的连接数预警

    在前篇分布式监控系统Zabbix3.2监控数据库的连接数 中已经对数据库的端口3306进行了监控,可以看到数据库的连接数历史变化有高有低,那如果达到了数据库连接数的阀值是不是主动通知给运维人员去检查问 ...

  4. 使用Xamarin开发手机聊天程序 -- 基础篇(大量图文讲解 step by step,附源码下载)

    如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!而且,Xamarin已经被微 ...

  5. 函数的作用域与this指向 --- 性能篇

    紧接上一篇博文:js函数的作用域与this指向 先来说说this的作用于链,this后的属性或者方法在使用时是先从本实例中查找,如果找到就先返回,如果没找到就接着向上从原型链中查找,如果有多重继承关系 ...

  6. window.setInterval与window.setTimeout使用实例

    <script type="text/javascript"> var arrived = false; var num = 0; var timer = window ...

  7. Amicable numbers -- Javascript 实现

    问题描写叙述: Let d(n) be defined as the sum of proper divisors of n (numbers less than n which divide eve ...

  8. get和post提交数据的差别

    form表单提交,默认method = "get",所以你在提交数据的时候,最好将此參数指定为method = "post",否则你在提交大数据的时候,可能会出 ...

  9. html5 canvas 画板

    <!doctype html> <head> <meta http-equiv="Content-Type" content="text/h ...

  10. Git(一)之基本操作详解

    前言 在这段时间的工作中一直都是用Git作为版本控制,只是知道简单的几个命令,没有去了解它的内部原理.所以周末有时间来系统学习. 现在的公司基本上都是用Git作为版本控制,当然也有SVN的. Git是 ...