本篇通过nova项目的rpm包构建来演示基本的rpm构建过程。...通过src.rpm构建新包 RPM包的构建需要用到一个以.spec结尾的文件(即软件包描述文件), 这个文件中包含了软件包的诸多信息,如软件包的名字、版本、类别、依赖、说明摘要、创建时要执行什么指令、安装时要执行什么操作...所以如果我们想要重新编译一个rpm包,最好的方法就是找到这个rpm包的源码包,通过源码包构建新的rpm包。...下面开始以重新构建openstack-nova-compute-16.1.7-1.el7.noarch.rpm包为例来演示RPM包的构建过程。...openstack nova项目的rpm包构建就完成了,把构建好的rpm包放到需要的服务器上直接安装就可以了。
redhat系列的linux使用RPM来管理安装软件很方便,把自己常用的脚本变成RPM包之后,用起来就方便了。...1.要制作RPM包,首先要看一下RPM包的内容(可以忽略) 2020-01-16_101241.png 2.环境准备 软件包依赖:rpm-build rpmdevtools 2020-01-16_101653....png 3.设置 制作RPM包 的环境 直接执行命令:rpmdev-setuptree即可在当前用户的家目录生成如下目录结构 2020-01-16_102024.png 4.拷贝自己的脚本到相应目录...包 %description #描述 this is set ddcw some habit %prep #安装前所需要做的事情 echo -e "\033[1;41;33m pre install...包 2020-01-16_105549.png 我换一台机器测试这个RPM包: 2020-01-16_110258.png 再验证一下功能(根据自己脚本测试,我的测试出来是OK的): 2020-01-16
源码包是你自己的计算机编译的,而且是你自己定义的功能,所以效率更高! 而rpm包是发行公司编译的,并不一定适合你自己的服务器,所以效率稍低!...所以只要是对外提供服务的软件,如lamp环境就应该使用源码包安装。而本机使用的软件如gcc,用rpm包安装更方便
本文只涉及一部分,本文讲的是利用gerrit工具和jenkins工具在开发代码被review通过后merge到主干的时候触发rpm自动构建脚本,自动生成rpm包的过程。...配置jenkins任务 配置构建触发器,选择gerrit event ? 配置gerrit trriger(配置git项目库,分支,merger触发) ?...编写模块的rpm build脚本,并将脚本内容填入构建执行脚本文本框中 如guardian模块的打包脚本 [root@promote ttt]# cat guardian_build_script.sh...修改代码,git提交commit,提交至gerrit review gerrit review +2 后merge后,触发jenkins进行任务构建(执行该模块的rpm build脚本) 可以看到第5...次构建是由gerrit triger触发进行的。
一.简介 可以将编译完成的服务打成rpm包放到私有仓库了,用于自定义的各种软件进行安装部署配置。...二.具体操作 1.安装软件,这个命令将构建rpm包 yum -y install rpm-build 2.开始初始化,如下命令必定报错,他会在当前生成一个文件夹 rpmbuild -ba nginx.spec...%build #构建部分 #以下为编译nginx时使用的参数 export DESTDIR=%{buildroot} ....包 5.安装 yum -y localinstall rpmbuild/RPMS/x86_64/nginx-1.8.0-1.el7.centos.x86_64.rpm 因为打包时,没有将nginx...脚本复制出来,所以要进到目录 用rpm -qi 可以看到打包的信息
CentOS使用FPM制作RPM包的方法 在Linux系统中,RPM包的制作是很困难的,其实使用工具就能快速制作RPM包,简单易学,下面小编就给大家介绍下Linux使用FPM制作RPM包的方法,感兴趣的朋友可以来了解一下...我来翻译成rpm版: # 去nodejs官网下载最新源码包 wget http://nodejs.org/dist/v0.10.12/node-v0.10.12.tar.gz # 解压 ...dir适合源码安装的程序 -t 指定目标类型,制作什么格式的包 -n 包的名字 -v 包的版本号 -C 包的根目录,之后是需要打包程序的路径...-d 依赖于哪些包,如果没有安装依赖包会在解包时报错 -f 第二次打包时目录下如果有同名安装包存在,则覆盖它 -p 输出的安装包的目录,不想放在当前目录下就需要指定...软件包卸载完成之前所要运行的脚本 --post-uninstall 软件包卸载完成之后所要运行的脚本 # 查看RPM包信息 rpm -qpi ~/rpmbuild/RPMS/x86
这是我在制作离线化部署项目时,亲自踩得坑,要下载大量rpm包,因为无知,只能从一个干净系统中执行yum -y install来查看依赖项的rpm包有哪些,然后再去复制名字版本去网页中下载。...–downloadonly:表示使用yum install的软件包,仅仅下载,并不安装。...–downloaddir:指定将rpm包下载到哪个目录,目录必须存在 如: yum install --downloadonly --downloaddir=/root ftp 该命令会将关于ftp的相关依赖...rpm包都下载到/root目录 要注意的是,如果使用该命令所在系统中已存在的rpm包是无法下载的。
[root@dev OOo_3.1.0_src]# rpm -q libxml2 [root@dev OOo_3.1.0_src]# rpm -qa libxml2* [root@dev ~]# rpm...libxml2-2.6.26 libxml2-devel-2.6.26-2.1.12 –allmatches 匹配多个,–nodeps 不检查依赖 [root@dev OOo_3.1.0_src]# rpm...-e –allmatches libxml2-2.6.26-2.1.12 –nodeps 成套的卸载 rpm -e `rpm -qa |grep libxml2` rpm -e `rpm -qa |grep...openoffice` `rpm -qa |grep ooobasis` 参考: http://blog.csdn.net/lltaoyy/article/details/7552834 http:/
# 使用yum下载 RPM 包及其所有依赖 # 获取vim的rpm包 yum install --downloaddir=/home/summer --downloadonly vim # 安装 rpm...-ivhU * --nodeps --force命令即可实现服务安装 # 获取docker的rpm包 yum install --downloaddir=/home/docker/ --downloadonly...docker-ce-18.06.0.ce --downloadonly只下载不安装 --downloaddir下载的rpm包的存放路径
怎样制作RPM包 摘要 我在网上找RPM包的制作例子几乎都是C源码编译安装然后生成RPM包, 而我的程序不是C写的很多时候是脚本语言如Python, PHP 甚至是 HTML文件。...怎样制作RPM包呢? ---- 目录 1. 为HTML手册文档制作RPM包 2. 通过 .tar.gz 文件创建 rpm 与 src.rpm 包 3....为HTML手册文档制作RPM包 下面是一个spec文件 保存为 doc.spec Summary: Netkiller's eBook Name: netkiller Version:...通过 .tar.gz 文件创建 rpm 与 src.rpm 包 准备tar包 rsync -auzv --exclude=.git --exclude=.svn /home/neo/workspace...包 rpmbuild -bb package.spec 这里使用-bb参数,即可以创建 .rpm 与 .src.rpm 两个包 $ find /home/neo/rpmbuild/ -name
# 参考文档 安装文档:https://docs.gitlab.com/omnibus/installation/ rpm软件包地址:gitlab/gitlab-ce - Packages · packages.gitlab.com...window) 国内下载地址: gitlab-ce | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror (opens new window) # rpm...包安装 # 一键在线安装 参考文档:gitlab/gitlab-ce - Installation · packages.gitlab.com (opens new window) # 离线安装 [root.../download.rpm [root@tiaoban gitlab]# ls gitlab-ce-15.7.9-ce.0.el8.x86_64.rpm [root@tiaoban gitlab]# dnf...-y install gitlab-ce-15.7.9-ce.0.el8.x86_64.rpm [root@tiaoban gitlab]# vim /etc/gitlab/gitlab.rb # 编辑站点地址
RPM(RedHat Package Manager)一种通过资料库管理的方式将所需要的软件安装到主机上的管理程序。RPM包的特点:1、事先已经编译好。2、安装方便。3、安装过程中要求环境一致。...RPM(Red hat Package Manage)是事实的业界标准,是red hat开发的标准,优点是管理软件方便简单,类似于DEB包(debain组织的宝管理方式)。...扩展资料:RPM软件包管理器英文原义:RPM Package Manager(原Red Hat Package Manager,现在是一个递归缩写)注解:一种用于互联网下载包的打包及安装工具,它包含在某些...它生成具有.RPM扩展名的文件。与Dpkg类似。RPM文件在Linux系统中的安装最为简便。...以著名的图像处理软件XV为例,其RPM包xv-3.10a-13.i386.rpm可以在该程序的主页中下载取得。
RPM包制作方法 最近有同学问我制作RPM包相关的问题,我发现我以前做过,但是忘记记录了,现在记录一下: 以打包nginx并带有nginx-rtmp的工程为rpm为例: 首先,需要安装一个...,当然,做包的前提是我们手动能够编译,安装nginx+nginx-rtmp 接下来就可以开始写spec,因为打包rpm时,rpmbuild会根据spec来进行操作,将源码包解压,然后按照我们的手动操作的步骤进行操作.../brp-compress + /usr/lib/rpm/brp-strip + /usr/lib/rpm/brp-strip-static-archive + /usr/lib/rpm...包 点击(此处)折叠或打开 [root@sr01 SOURCES]# ls /root/rpmbuild/RPMS/x86_64/nginx-1.3.8.with.rtmp-1.el6....x86_64.rpm /root/rpmbuild/RPMS/x86_64/nginx-1.3.8.with.rtmp-1.el6.x86_64.rpm [root@sr01
使用nfpm制作rpm包 ?...如果你经历过打rpm包的年代,你肯定对fpm不陌生,今天给大家介绍一个使用golang写的打deb和rpm包的工具,那就是nfpm,为什么要推荐,是因为可以通过goreleaser把程序直接输出rpm或...deb包。...包的信息 > rpm -qpi hello.rpm Name : foo Epoch : 0 Version : v1.0 Release : 1 Architecture...两个格式的包制作,相对fpm还是弱了些,不过相对来说更简单(第一次接触的话,还是需要废点时间学习下)一些。
Mellanox的驱动源码在centos7下面是使用RPM包封装的,需要解压此格式的包来获取源文件 RPM包括是使用cpio格式打包的,因此可以先转成cpio然后解压,如下所示: rpm2cpio xxx.rpm...| cpio -div 例如: [root@server012 libibverbs-1.2.1mlnx1]# rpm2cpio libibverbs-1.2.1mlnx1-OFED.4.0.0.1.3.40101....src.rpm | cpio -div 然后得到tar.gz的压缩包,直接使用tar -zxvf命令即可解压得到源码
安装扩展源epe目录概要 yum install -y epel-release //安装扩展源 yum list |grep epel //过滤出epel包 yum下载rpm...//rpm包下载的位置 yum install -y 包名 --downloadonly --downloaddir=路径 // yum reinstall -y 包名 -...有可能查看不了,个人猜测有可能是网络原因或者是需要下载epel包后,才能过滤出包) yum下载rpm包 yum install -y 包名 --downloadonly /.../仅仅下载,而不安装 --downloadonly属于yum的一个插件 在使用的时候,先确认下载的rpm包是否安装 若已经安装过,则会提示rpm包已安装过 rpm -q 包名 //查看rpm...//这里会看到zsh包没有被安装 未安装软件包 zsh ls /var/cache/yum/x86_64/7/ //查看rpm包下载的位置
Centos安装mysql rpm包 安装mysql步骤: 清理环境 centos有可能会自带一个mariadb 查看是否已安装 rpm -qa |grep -i mysql #(centos7默认系统自带的...) rpm -qa |grep -i mariadb #rpm -e 加上包名,把mariadb包清掉 rpm -e --nodeps XXXX 可以看到用rpm删除会失败,提示有依赖关系的软件需要安装...rpm删除时如果有依赖关系,可以用yum remove + 包名来删除mariadb 开始安装: 一般用装软件用yum直接安装也可以,但是有一个问题:用yum的话,是到默认的mariadb用的yum.../ rpm –ivh + 包安装所需要的包 rpm -ivh mysql-community-client-5.7.22-1.el6.x86_64.rpm(如果报错则加上--force --nodeps...-5.7.33-1.el6.x86_64.rpm-bundle.tar #安装,安装顺序为 rpm -vih mysql-community-common-5.7.33-1.el7.x86_64.rpm
3、编译源码,根据自己的需求做成定制RPM包–>搭建内网yum仓库–yum安装。结合前两者的优点,暂未发现什么缺点。可能的缺点就是RPM包的通用性差,只能适用于本公司的环境。...另外一般人不会定制RPM包。这是中大型互联网企业运维自动化的必要技能。...1.3.1 支持的源类型包 类型 说明 dir 将目录打包成所需要的类型,可以用于源码编译安装的软件包 rpm 对rpm进行转换 gem 对rubygem包进行转换 python 将python模块打包成相应的类型...1.3.2 支持的目标类型包 类型 说明 rpm 转换为rpm包 deb 转换为deb包 solaris 转换为solaris包 puppet 转换为puppet模块 1.4 FPM的安装与使用..."} 1.5.4 安装rpm包 推荐使用yum 安装 yum -y localinstall nginx-1.10.2-1.x86_64.rpm 这个命令会自动先安装rpm包的依赖,然后再安装rpm包
CentOS利用yum下载好rpm包,并离线安装 1、联网安装好rpm包,并将下载好的包备好 #yum install --downloadonly --downloaddir=/home/samba ...samba 其中samba 是要用yum安装的安装包,/home/samba是要存放下载的yum安装包及其依赖包的保存路径 2、离线的机器上,在rpm所在的文件夹内,执行以下脚本 #rpm -Uvh -...-force --nodeps *.rpm
领取专属 10元无门槛券
手把手带您无忧上云