作者:采蘑菇的雨天戴草帽_412_715 | 来源:互联网 | 2017-06-19 19:19
一、RPM包的分类RPM有五种基本的操作功能:安装、卸载、升级、查询和验证。linux软件包分为两大类:(1)二进制类包,包括rpm安装包(一般分为i386和x86等几种)(2)源码类包,源码包和开发包应该归位此类(.src.rpm)。有时候为了方便源码包的安装,和我们自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,
一、RPM包的分类
RPM有五种基本的操作功能:安装、卸载、升级、查询和验证。
linux软件包分为两大类:
(1)二进制类包,包括rpm安装包(一般分为i386和x86等几种)
(2)源码类包,源码包和开发包应该归位此类(.src.rpm)。
有时候为了方便源码包的安装,和我们自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,当有了源码包就可以直接编译得到二进制安装包和其他任意包。spec file是制作rpm包最核心的部分,rpm包的制作就是根据spec file来实现的。在制作自定义rpm包的时候最好不要使用管理员进行,因为管理员权限过大,如果一个命令写错了,结果可能是灾难性的,而制件一个rpm包普通用户完全可以实现
二、修改宏及自定义车间位置
在redhat下,rpm包的默认制作路径在/usr/src/redhat下,这其中包含了6个目录(要求全部大写)
Directory Usage
BUILD 源代码解压以后放的位置,只需提供BUILD目录,具体里面放什么,不用我们管,所以真正的制作车间是BUILD目录
RPMS 制作完成后的rpm包存放目录,为特定平台指定子目录(i386,i686,ppc)
SOURCES 收集的源文件,源材料,补丁文件等存放位置
SPECS 存放spec文件,作为制作rpm包的领岗文件,以 rpm名.spec
SRPMS src格式的rpm包位置 ,既然是src格式的包,就没有平台的概念了
BuiltRoot 假根,使用 install 临时安装到这个目录,把这个目录当作根来用的,所以在这个目录下的目录文件,才是真正的目录文件。当打包完成后,在清理阶段,这个目录将被删除
|
但centos并没有该目录,因此,我们不得不自定义工作车间,即使在redhat下有该目录,一般也是自定义到普通用户的家目录下的
rpmbuild --showrc 显示所有的宏,以下划线开头,一个下划线:定义环境的使用情况,二个下划线:通常定义的是命令,为什么要定义宏,因为不同的系统,命令的存放位置可能不同,所以通过宏的定义找到命令的真正存放位置
查看默认工作车间,所以只要改变了这个宏,我们就可以自定义工作车间了
|
[root@localhost /]
-14: _builddir %{_topdir} /BUILD
-14: _buildrootdir %{_topdir} /BUILDROOT
-14: _desktopdir %{_datadir} /applications
-14: _rpmdir %{_topdir} /RPMS
-14: _sourcedir %{_topdir} /SOURCES
-14: _specdir %{_topdir} /SPECS
-14: _srcrpmdir %{_topdir} /SRPMS
-14: _topdir %{getenv:HOME} /rpmbuild
|
三、rpm包制作原理图
四、制作rpm包
1、安装rpm-build
2、增加普通用户并修改工作车间目录
$ vim ~/.rpmmacros
%_topdir /home/hero/rpmbuild
|
3、收集源码文件
(1)文件列表
|
var cpro_id = "u6885494";
推荐阅读
-
本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ...
[详细]
蜡笔小新 2023-12-14 17:57:01
-
本文介绍了在CentOS 6.4系统中更新源地址的方法,包括备份现有源文件、下载163源、修改文件名、更新列表和系统,并提供了相应的命令。 ...
[详细]
蜡笔小新 2023-12-11 16:09:40
-
-
本文介绍了使用CentOS7.0 U盘刻录工具进行安装的详细步骤,包括使用USBWriter工具刻录ISO文件到USB驱动器、格式化USB磁盘、设置启动顺序等。通过本文的指导,用户可以轻松地使用U盘安装CentOS7.0操作系统。 ...
[详细]
蜡笔小新 2023-12-14 18:55:14
-
本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ...
[详细]
蜡笔小新 2023-12-13 11:35:40
-
本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ...
[详细]
蜡笔小新 2023-12-13 09:26:47
-
本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ...
[详细]
蜡笔小新 2023-12-12 21:38:57
-
本文详细介绍了Vim编辑器中的三种模式(命令模式、末行模式和编辑模式)以及它们之间的操作区别和切换方法。Vim编辑器凭借其多种命令快捷键和高效率的操作方式,得到了广大厂商和用户的认可。对于想要高效操作文本的用户来说,了解这些模式的使用方法是必不可少的。 ...
[详细]
蜡笔小新 2023-12-12 15:59:51
-
本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ...
[详细]
蜡笔小新 2023-12-12 13:54:31
-
本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ...
[详细]
蜡笔小新 2023-12-12 10:10:14
-
本文介绍了在Linux系统中设置文件ACL权限的方法和使用说明,包括在centos7.3和centos6.9中开启ACL权限的两种方法:在挂载时指定打开ACL权限和修改默认的属性信息。同时提供了对ACL权限的详细解释和应用场景。 ...
[详细]
蜡笔小新 2023-12-12 01:11:07
-
本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ...
[详细]
蜡笔小新 2023-12-11 14:24:00
-
本文介绍了在Linux系统下,当已安装的依赖包版本高于需要安装的依赖包版本时,解决方法包括欺骗安装程序和修改相关配置文件等操作。针对不同情况,提供了不同的解决方案。 ...
[详细]
蜡笔小新 2023-12-11 09:21:04
-
本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ...
[详细]
蜡笔小新 2023-12-11 07:30:47
-
本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ...
[详细]
蜡笔小新 2023-12-10 17:10:24
-
本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ...
[详细]
蜡笔小新 2023-12-10 16:27:21
-
采蘑菇的雨天戴草帽_412_715
这个家伙很懒,什么也没留下!
|