在红帽软件包管理器(RPM)公布之前要想在Linux系统中安装软件只能采取“源码包”的方式安装,早期在Linux系统中安装程序是一件非常困难,耗费耐心的事情,因为大多数的服务程序仅仅提供编译源码,需要运维人员自行编译代码并解决许多的依赖关系,源码安装需要运维人员有很多的知识、高超的技能、甚至很好的耐心才能安装好一个程序,而且在安装、升级、卸载时还要考虑到其他程序、库的依赖关系,所以管理员在校验、安装、卸载、查询、升级等管理软件操作时难度非常大。
而RPM机制则为解决这些问题而设计的,RPM原称为“Redhat Package Manager”,因其卓越的优势很快被公众认可,目前使用范围也已不局限在红帽系统中了。RPM会建立统一的数据库文件,详细的记录软件信息并能够自动分析依赖关系,颇有一些“软件控制面板”的感觉。
安装软件的命令格式:rpm -ivh filename.rpm
升级软件的命令格式:rpm -Uvh filename.rpm
卸载软件的命令格式:rpm -e filename.rpm
查询软件的描述信息的命令格式:rpm -qpi filename.rpm
列出软件的文件信息的命令格式:rpm -qpl filename.rpm
查询文件属于那个RPM的命令格式:rpm -qf filename
虽然RPM能够帮助用户查询软件相关的依赖关系,但问题还是要自己解决,有些大型软件需要数十个依赖包也是不小的负担。
1.6 Yum软件仓库
Yum仓库则是为进一步简化RPM管理软件难度而设计的,Yum能够根据用户的要求分析出所需软件包及其相关依赖关系,自动从服务器下载软件包并安装到系统,听起来就已经很爽了吧?
yum软件仓库的使用拓扑图
用户能够根据需求来指定Yum仓库与是否校验软件包,而这些只需几条关键词即可完成,现在来学习下配置的方法吧~
所有Yum仓库的配置文件均需以.repo结尾并存放在/etc/yum.repos.d/目录中的。
[rhel-media]: yum源的名称,可自定义。 name=linuxprobe : 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仓库中的RPM软件包可以是由红帽官方发布的,也可以是第三方组织发布的,当然用户也可以编写的~随书提供的镜像光盘内已经包含了大量的可用RPM软件包,将会在后面的实验章节中为大家演示如何使用。
命令 | 作用 |
yum repolist all | 列出所有仓库。 |
yum list all | 列出仓库中所有软件包 |
yum info 软件包名称 | 查看软件包信息 |
yum install 软件包名称 | 安装软件包 |
yum reinstall 软件包名称 | 重新安装软件包 |
yum update 软件包名称 | 升级软件包 |
yum remove 软件包 | 移除软件包 |
yum clean all | 清除所有仓库缓存 |
yum check-update | 检查可更新的软件包 |
yum grouplist | 查看系统中已经安装的软件包组 |
yum groupinstall 软件包组 | 安装指定的软件包组 |
yum groupremove软件包组 | 移除指定的软件包组 |
yum groupinfo 软件包组 | 查询指定的软件包组信息 |