6.5 YUM软件包管理
前端软件包管理器(yellow dog updater modified,YUM)适用于CentOS、Fedora、Red Hat及SUSE等操作系统,主要用于管理RPM包。YUM工具能够从指定的服务器自动下载RPM包并且安装,还可以自动处理依赖性关系。
使用RPM工具管理和安装软件时,会发现RPM包有依赖,需要逐个手动下载安装,而YUM工具的最大便利就是可以自动安装所有依赖的软件包,从而提升效率,节省时间。
6.5.1 YUM工作原理
学习YUM一定要理解YUM的工作原理。YUM正常运行需要依赖两个部分:一是YUM源端;二是YUM客户端。
YUM客户端安装的所有RPM包都是来自YUM服务端,YUM源端通过HTTP或者FTP服务器发布。YUM客户端能够从YUM源端下载依赖的RPM包是由于在YUM源端生成了RPM包的基准信息,包括RPM包版本号、配置文件、二进制信息、依赖关系等。
YUM客户端需要安装软件或者搜索软件时,会查找/etc/yum.repos.d下以.repo结尾文件。CentOS Linux默认的.repo文件名为CentOS-Base.repo,该文件中配置了YUM源端的镜像地址,所以每次安装、升级RPM包YUM客户端均会查找.repo文件。
YUM客户端如果配置了CentOS官方repo源,客户端操作系统必须能联通外网,满足网络条件才能下载软件并安装。如果没有网络,也可以构建光盘源或者内部YUM源。YUM客户端安装软件,默认会把YUM源地址、header信息、软件包、数据库信息、缓存文件存储在/var/cache/yum中,每次使用YUM工具,YUM优先通过cache查找相关软件包,cache中不存在,然后再访问外网YUM源。
6.5.2 YUM企业案例演练
YUM工具的使用简便、快捷、高效,在企业中得到广泛的使用,因此得到众多IT运维、程序人员的青睐。要能熟练使用YUM工具,需要先掌握YUM命令行参数的使用。
YUM命令工具指南,YUM格式为
其中的[options]是可选项。-y表示安装或者卸载出现yes时,自动确认yes;-q表示不显示安装的过程。YUM命令工具的参数详解如下:
□yum install httpd:安装httpd软件包。
□yum search:YUM搜索软件包。
□yum list httpd:显示指定程序包安装情况httpd。
□yum list:显示所有已安装及可安装的软件包。
□yum remove httpd:删除程序包httpd。
□yum erase httpd:删除程序包httpd。
□yum update:内核升级或者软件更新。
□yum update httpd:更新httpd软件。
□yum check-update:检查可更新的程序。
□yum info httpd:显示安装包信息httpd。
□yum provides:列出软件包提供哪些文件。
□yum provides"∗/rz":列出rz命令由哪个软件包提供。
□yum grouplist:查询可以用groupinstall安装的组名称。
□yum groupinstall"Chinese Support":安装中文支持。
□yum groupremove"Chinese Support":删除程序组Chinese Support。
□yum deplist httpd:查看程序httpd依赖情况。
□yum clean packages:清除缓存目录下的软件包。
□yum clean headers:清除缓存目录下的headers。
□yum clean all:清除缓存目录下的软件包及旧的headers。
YUM企业案例实战步骤如下:
(1)执行命令yum install httpd-y,安装httpd服务,如图6-7所示。
图6-7 YUM安装httpd软件
(2)执行命令yum grouplist,检查groupinstall的软件组名,如图6-8所示。
图6-8 YUM grouplist显示组安装名称
(3)执行命令yum groupinstall"GNOME Desktop"-y,安装Linux图像界面,如图6-9所示。
图6-9 GNOME Desktop图像界面安装
(4)执行命令yum install httpd php php-devel php-mysqlm ariadb mariadb-server-y,安装中小企业lam p架构环境,如图6-10所示。
图6-10 lamp中小企业架构安装
(5)执行命令yum remove ntpdate-y,卸载ntpdate软件包,如图6-11所示。
图6-11 卸载ntpdate软件
(6)执行命令yum provides rz或者yum provides"∗/rz",查找rz命令的提供者,如图6-12所示。
图6-12 查找rz命令的提供者
(7)执行命令yum update-y,升级Linux所有可更新的软件包或Linux内核升级,如图6-13所示。
图6-13 软件包升级或内核升级