程序包管理:rpm/yum/编译数据库
在红帽软件包管理器(RPM)公布以前要想在Linux系统中安装软件只能采起“源码包”的方式安装,早期在Linux系统中安装程序是一件很是困难,耗费耐心的事情,由于大多数的服务程序仅仅提供编译源码,须要运维人员自行编译代码并解决许多的依赖关系,源码安装须要运维人员有不少的知识、高超的技能、甚至很好的耐心才能安装好一个程序,并且在安装、升级、卸载时还要考虑到其余程序、库的依赖关系,因此管理员在校验、安装、卸载、查询、升级等管理软件操做时难度很是大。缓存
而RPM机制则为解决这些问题而设计的,服务器
RPM为“Redhat Package Manager”,因其卓越的优点很快被公众承认,目前使用范围也已不局限在红帽系统中了。RPM会创建统一的数据库文件,详细的记录软件信息并可以自动分析依赖关系,很有一些“软件控制面板”的感受。运维
红帽软件包管理器(rpm):ide
查询软件的描述信息:rpm -qpi filename.rpm学习
列出软件的文件信息:rpm -qpl filename.rpmui
安装软件:rpm -ivh filename.rpmurl
升级软件:rpm -Uvh filename.rpmspa
卸载软件:rpm -e filename.rpmdebug
虽然RPM可以帮助用户查询软件相关的依赖关系,但问题仍是要本身解决,有些大型软件须要数十个依赖包也是不小的负担。
Yum仓库则是为进一步简化RPM管理软件难度而设计的,Yum可以根据用户的要求分析出所需软件包及其相关依赖关系,自动从服务器下载软件包并安装到系统,听起来就已经很爽了
yum软件仓库的使用拓扑图
用户可以根据需求来指定Yum仓库与是否校验软件包,而这些只需几条关键词便可完成,如今来学习下配置的方法.
全部Yum仓库的配置文件均需以.repo结尾并存放在/etc/yum.repos.d/目录中的。
[rhel-media]: yum源的名称,可自定义。
baseurl=file:///media/cdrom :提供方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)
enabled=1 : 设置此源是否可用,1为可用,0为禁用。
gpgcheck=1 : 设置此源是否校验文件,1为校验,0为不校验。
gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release :若为校验请指定公钥文件地址。
命令做用
yum repolist all 列出全部仓库。
yum list all 列出仓库中全部软件包
yum install 软件包名称安装软件包
yum update 软件包名称 升级软件包
yum clean all 清除全部仓库缓存
yum check-update 检查可更新的软件包
yum grouplist 查看系统中已经安装的软件包组
yum groupinstall 软件包组 安装指定的软件包组
Yum仓库中的RPM软件包能够是由红帽官方发布的,也能够是第三方组织发布的,固然用户也能够编写的.
将源码编译成rpm包的详细步骤:
# tar -xvzf glusterfs-2.0.0.tar.gz
# cp glusterfs-2.0.0.tar.gz /usr/src/redhat/SOURCES/
# rpmbuild -ba glusterfs-2.0.0/glusterfs.spec
# cp /usr/src/redhat/RPMS/i386/glusterfs* .
# rm glusterfs-debuginfo-2.0.0-1.i386.rpm
# rpm -ivh glusterfs-*.rpm