#清除缓存 yum clean all 安装rpm-build yum install rpm-build make rsync cd rpmbuild/ ll #将源码到/root/rpmbuild...description %pre %preun %postun %clean %files %defattr (-,root,root,0777) /usr /etc /var %post #运行制作...rpm包 rpmbuild -ba 文件名 #安装 xx.rpm 包; rpm -i xx.rpm #安装 x.rpm 包并在安装过程中显示正在安装的文件信息; rpm -iv xx.rpm #安装...xx.rpm 包并在安装过程中显示正在安装的文件信息及安装进度 rpm -ivh xx.rpm #卸载一个包 rpm -e #查询一个包是否被安装 rpm -q #得到被安装的包的信息 rpm...-qi #列出该包中有哪些文件 rpm -ql #列出服务器上的一个文件属于哪一个RPM包 rpm -qf #可综合好几个参数一起用 rpm -qil #列出所有被安装的rpm package
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包 摘要 我在网上找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:.../netkiller-1.0.1-1.x86_64 + exit 0 现在RPM已经制作完毕。...包 rpmbuild -bb package.spec 这里使用-bb参数,即可以创建 .rpm 与 .src.rpm 两个包 $ find /home/neo/rpmbuild/ -name
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 # 解压 ...tar zxvf node-v0.10.12.tar.gz -C /dev/shm/ # 进入源码目录 cd /dev/shm/node-v0.10.12/ # 指定配置参数 。...dir适合源码安装的程序 -t 指定目标类型,制作什么格式的包 -n 包的名字 -v 包的版本号 -C 包的根目录,之后是需要打包程序的路径...软件包卸载完成之前所要运行的脚本 --post-uninstall 软件包卸载完成之后所要运行的脚本 # 查看RPM包信息 rpm -qpi ~/rpmbuild/RPMS/x86
一.简介 可以将编译完成的服务打成rpm包放到私有仓库了,用于自定义的各种软件进行安装部署配置。...二.具体操作 1.安装软件,这个命令将构建rpm包 yum -y install rpm-build 2.开始初始化,如下命令必定报错,他会在当前生成一个文件夹 rpmbuild -ba nginx.spec...文件夹内容如下 ls rpmbuild 将源码tar包复制到SOURCES目录 cp nginx-1.8.0.tar.gz rpmbuild/SOURCES/ 3.修改spec配置文件,根据这个文件内容进行打包...包 5.安装 yum -y localinstall rpmbuild/RPMS/x86_64/nginx-1.8.0-1.el7.centos.x86_64.rpm 因为打包时,没有将nginx...脚本复制出来,所以要进到目录 用rpm -qi 可以看到打包的信息
使用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还是弱了些,不过相对来说更简单(第一次接触的话,还是需要废点时间学习下)一些。
RPM包制作方法 最近有同学问我制作RPM包相关的问题,我发现我以前做过,但是忘记记录了,现在记录一下: 以打包nginx并带有nginx-rtmp的工程为rpm为例: 首先,需要安装一个...,当然,做包的前提是我们手动能够编译,安装nginx+nginx-rtmp 接下来就可以开始写spec,因为打包rpm时,rpmbuild会根据spec来进行操作,将源码包解压,然后按照我们的手动操作的步骤进行操作...buildroot} %files %defattr(-,root,root,-) %doc %changelog 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
源码包是你自己的计算机编译的,而且是你自己定义的功能,所以效率更高! 而rpm包是发行公司编译的,并不一定适合你自己的服务器,所以效率稍低!...所以只要是对外提供服务的软件,如lamp环境就应该使用源码包安装。而本机使用的软件如gcc,用rpm包安装更方便
安装rpm-build软件并配置SPEC文件 1)安装rpm-build软件包 # yum -y install rpm-build 2)生成rpmbuild目录结构 # rpmbuild -ba...nginx.spec # ls /root/rpmbuild BUILD BUILDROOT RPMS SOURCES SPECS SRPMS 3)将源码软件复制到SOURCES目录 # cp...中 /usr/local/nginx/* %changelog 使用配置文件创建RPM包 1)安装依赖软件包 # yum –y install gcc pcre-devel zlib-devel...2)rpmbuild创建RPM软件包 # rpmbuild -ba SPECS/nginx.spec # ls RPMS/x86_64/nginx-1.8.0-1.x86_64.rpm # rpm -...安装、卸载软件 # rpm -ivh RPMS/x86_64/nginx-1.8.0-1.x86_64.rpm # rpm -qa |grep nginx # /usr/local/nginx/sbin
xxx.src.rpm: 以src.rpm结尾的包称为源码包,源码包中包含了很多的文件(主要包括源码,甚至包括service的配置文件等),以及前面提到的spec文件。...所以如果我们想要重新编译一个rpm包,最好的方法就是找到这个rpm包的源码包,通过源码包构建新的rpm包。...包 # 构建rpm包 [root@centos nova]# python setup.py bdist_rpm ...... + cd /home/nova/build/bdist.linux-mips64el....dev7-1.src.rpm -> dist moving build/bdist.linux-mips64el/rpm/RPMS/noarch/nova-16.1.9.dev7-1.noarch.rpm...-> dist # 构建完成后,rpm包会移动到当前目录下的dist目录下,其中noarch.rpm就是可以直接安装的二进制包, # 而src.rpm则是源码包,是不能直接安装的。
RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,是一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。...使用rpm安装软件和管理软件非常的方便。而这节我们不是介绍如何使用rpm安装或管理软件,而是如何把源码制作成rpm包。 下面我们以制作nginx的rpm开始介绍其制作方法。.../usr/src/redhat/RPMS — 存放由rpmbuild制作好的二进制包。 /usr/src/redhat/SRPMS —存放由rpmbuild制作好的源码包。...mkdir -p /usr/src/redhat cd /usr/src/redhat mkdir SOURCES SPECS BUILD RPMS SRPMS 下载源码包到SOURCES目录,不需要解压...测试rpm包 rpm -ivh /usr/src/redhat/RPMS/i386/nginx-1.11.1-1.el7.ngx.x86_64.rpm spec文件解释 从以上的简单例子可以看出,制作rpm
文章目录 一、下载 Linux 内核源码 二、使用 VSCode 阅读 Linux 内核源码 一、下载 Linux 内核源码 ---- 参考 【Linux 内核】编译 Linux 内核 ① ( 下载指定版本的...Linux 内核源码 | Linux 内核版本号含义 | 主版本号 | 次版本号 | 小版本号 | 稳定版本 ) 博客 , 下载 Linux 5.6.18 版本的内核源码 ; 5.x 内核源码下载地址...VSCode 阅读 Linux 内核源码 ---- 参考 【开发环境】安装 Visual Studio Code 开发环境 ( 下载 Visual Studio Code 安装器 | Visual Studio...Code ) 博客 , 安装 VSCode 软件 ; 打开 VSCode , 选择 ” 菜单栏 / 文件 / 打开文件夹 ” 选项 , 选择 Linux 内核源码目录 , 点击 ” 选择文件夹 ”...按钮 , 此时就可以在 VSCode 中阅读 Linux 内核源码 ; 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/163620.html原文链接:https
在讲解如何从 RPM 包中提取文件之前,先来系统学习一下 cpio 命令。...包中指定文件 在服务器使用过程,如果系统文件被误修改或误删除,可以考虑使用 cpio 命令提取出原 RPM 包中所需的系统文件,从而修复被误操作的源文件。...RPM 包允许逐个提取包中文件,使用的命令格式如下: [root@localhost ~]# rpm2cpio 包全名|cpio -idv .文件绝对路径 该命令中,rpm2cpio 就是将 RPM...有读者可能会问,如何知道 ls 命令隶属于那个 RPM 包呢?...很简单,使用 rpm -qf 命令即可,如下所示: [root@localhost ~]# rpm -qf /bin/ls coreutils-8.4-19.el6.i686 #查看ls文件属于哪个软件包
文章目录 一、下载 Linux 内核源码 二、使用 VSCode 阅读 Linux 内核源码 一、下载 Linux 内核源码 ---- 参考 【Linux 内核】编译 Linux 内核 ① ( 下载指定版本的...Linux 内核源码 | Linux 内核版本号含义 | 主版本号 | 次版本号 | 小版本号 | 稳定版本 ) 博客 , 下载 Linux 5.6.18 版本的内核源码 ; 5.x 内核源码下载地址...VSCode 阅读 Linux 内核源码 ---- 参考 【开发环境】安装 Visual Studio Code 开发环境 ( 下载 Visual Studio Code 安装器 | Visual Studio...Code ) 博客 , 安装 VSCode 软件 ; 打开 VSCode , 选择 " 菜单栏 / 文件 / 打开文件夹 " 选项 , 选择 Linux 内核源码目录 , 点击 " 选择文件夹 "...按钮 , 此时就可以在 VSCode 中阅读 Linux 内核源码 ;
一、RPM包介绍 Red Hat Package Manager (RPM)是一种在Linux系统中的软件包管理工具,主要用于安装、升级和卸载软件包。...RPM包是一种预编译的二进制文件,其中包含了软件的可执行程序、库文件以及配置文件等,可以大大简化软件的安装过程。 通常Linux系统中都会默认安装RPM包管理工具。...可以使用以下命令查看已安装的RPM包: rpm -qa 如果需要卸载已安装的RPM包,则可以使用以下命令: rpm -e package_name 三、RPM包依赖关系 在安装或者升级RPM包时,可能会遇到依赖关系的问题...即某个RPM包依赖于其他的RPM包,如果依赖的包没有安装,则不能成功安装该包。...可以使用以下命令查看某个RPM包的依赖关系: rpm -qpR package_name.rpm 如果发现缺少了某个依赖的RPM包,则需要先安装该包才能安装目标包。
不是版本太低就是文件分布太野路子”,此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,其中的Spec文件是制作RPM包的核心。...下面我们以制作NGINX的RPM开始介绍其制作方法。以下操作在CentOS7.4 64位系统进行(切记,不要把7上的文件装到6上去)。 ...以下为目录所对应存放文件的解释: BUILD:源码解压以后放的目录 RPMS:制作完成后的rpm包存放目录 SOURCES:存放源文件,配置文件,补丁文件等放置的目录...【常用】 SPECS:存放spec文件,作为制作rpm包的文件,即:nginx.spec……【常用】 SRPMS:src格式的rpm包目录 BuiltRoot:虚拟安装目录...Prefix: %{_prefix} 这个主要是为了解决今后安装rpm包时,并不一定把软件安装到rpm中打包的目录的情况。
#查看安装的Mysql版本 sjgx2:/usr/local/mysql/bin # rpm -qa |grep -i mysql MySQL-client-5.1.17-0.glibc23 MySQL-server...-5.1.17-0.glibc23 #卸载 sjgx2:/usr/local/mysql/bin # rpm -e MySQL-client-5.1.17-0.glibc23 sjgx2:/usr/local.../mysql/bin # rpm -e MySQL-server-5.1.17-0.glibc23 如果你输入rpm -e httpd-2.2.3-31.el5.centos.4命令,系统会提示你有依赖关系...[root@firewall sysconfig]# rpm -qa | grep httpd httpd-2.2.3-31.el5.centos.4 httpd-manual-2.2.3-31.el5...]# rpm -e httpd-2.2.3-31.el5.centos.4 –nodeps 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。
一般用%setup -c就可以了,但有两种情况:一就是同时编译多个源码包,二就是源码的tar包的名称与解压出来的目录不一致,此时,就需要使用-n参数指定一下了。...%patch 打补丁通常补丁都会一起在源码tar.gz包中,或放到SOURCES目录下。...另一种不标准的写法是,可参考源码中的参数自定义,例如: 引用CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" .....tar.gz #源代码包,可以有Source0,Source1等源 BuildRequires: gcc, gcc-c++ #制作rpm包时,所依赖的基本库 Requires...该选项可有可无 %clean rm -rf %{buildroot} #清理临时文件 RPM包制作拓展 如果想为zabbix增加启动控制脚本或一些其他的配置文件,可以将其放在SOURCE
写在前面:本次测试环境是linux 7.4 (redhat,centos,oracle linux).linux6也行,只是服务管理方式不同而已. 1.下载nginx源码包下载地址,根据自己需求选择版本...RPM包, 这样下次安装的时候方便一点,这个也是个人习惯的,你也可以写成shell脚本,这样还能适合其它nginx版本和操作系统版本.制作成rpm之后,受限与nginx版本和操作系统版本(其实也就是一些库...) 4.1.安装制作rpm包的软件 rpm-build yum install -y rpm-build 4.2执行rpmbuild命令生成环境 rpmbuild ....SPECS `-- SRPMS 这个我不多讲,后面有空了再说. rpmbuild/SPECS 是放name.spec文件的,你可以把这个文件理解为配置文件. rpmbuild/SOURCES/ 是放源码包的.../developerworks/cn/linux/management/package/rpm/part3/ 4.3本次实验简单,你只要把nginx的包放在rpmbuild/SOURCES/下面,把nginx.spec
领取专属 10元无门槛券
手把手带您无忧上云