这是一份聚焦Linux软件管理的YUM包管理器安装指南,覆盖从入门到精通的全流程,尤其针对麒麟系统提供专属安装指引,指南详细讲解麒麟系统中YUM的安装步骤,包括配置适配的软件源、执行安装命令等核心操作,同时涵盖YUM基础使用(软件安装、更新、卸载)、依赖自动处理技巧及进阶管理 ,帮助用户轻松掌握Linux软件管控,高效解决各类软件部署与维护问题,实现系统软件的便捷管理。
在Linux系统的日常运维与开发中,软件包的安装、更新与卸载是高频操作,而YUM(Yellowdog Updater, Modified)作为基于RPM包管理系统的前端工具,凭借其自动解决依赖、批量操作、多源支持等特性,成为CentOS、RHEL、Fedora等主流发行版中不可或缺的软件管理利器,对于Linux新手或需要跨发行版管理软件的用户来说,掌握YUM的安装、配置与使用,无疑能大幅提升系统管理效率,本文将从YUM的核心价值出发,详细讲解不同Linux发行版下的YUM安装 、源配置优化、常用命令实战及故障排查技巧,帮助你全面掌握这一工具。
YUM包管理器:Linux软件管理的“瑞士军刀”
要理解YUM的重要性,首先得明确它与传统RPM包管理的区别,RPM(Red Hat Package Manager)是Linux系统中最基础的包格式,直接使用rpm命令安装软件时,往往会遇到“依赖地狱”——即安装一个软件需要先手动安装其所有依赖包,过程繁琐且容易出错,而YUM的出现,正是为了解决这一痛点:它通过预定义的软件源(Repository)自动检索软件包及其依赖关系,一键完成安装、更新等操作,极大简化了软件管理流程。

YUM的核心优势主要体现在以下几点:
- 自动依赖解析:安装软件时自动检测并下载所需依赖包,无需用户手动干预;
- 多源支持:可同时配置多个软件源,灵活获取不同渠道的软件包;
- 版本控制:支持安装特定版本的软件包,也可批量更新系统中所有软件;
- 缓存机制:将下载的软件包缓存到本地,重复安装时无需再次下载,节省带宽;
- 插件扩展:通过插件实现额外功能,如
fastestmirror插件可自动选择最快的镜像源,security插件可专门更新安全补丁。
尽管CentOS、RHEL等发行版默认预装YUM,但在某些场景下(如系统重装后YUM被误删、Ubuntu/Debian等非RPM发行版需要使用YUM、CentOS 8停服后需重新配置YUM),用户仍需手动安装或重新配置YUM,我们针对不同发行版逐一讲解安装步骤。
不同Linux发行版的YUM安装
(一)CentOS/RHEL 7:重装或修复YUM
CentOS 7默认预装YUM,但如果因误操作导致YUM损坏或缺失,可按以下步骤重装:
- 检查YUM状态:首先执行
yum --version查看YUM是否存在,若提示“command not found”则需重装; - 卸载残留YUM组件:使用
rpm -qa | grep yum列出所有与YUM相关的包,然后执行rpm -e --nodeps 包名强制卸载(例如rpm -e --nodeps yum-3.4.3-168.el7.centos.noarch); - 下载YUM安装包:从CentOS官方镜像站(如阿里云镜像
https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/)下载所需的YUM核心包,包括yum、yum-plugin-fastestmirror、yum-metadata-parser、python-iniparse等;wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-3.4.3-168.el7.centos.noarch.rpm wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
- 安装YUM包:使用
rpm -ivh命令按依赖顺序安装,注意先安装python-iniparse和yum-metadata-parser,再安装yum-plugin-fastestmirror和yum:rpm -ivh python-iniparse-0.4-9.el7.noarch.rpm yum-metadata-parser-1.1.4-10.el7.x86_64.rpm rpm -ivh yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm yum-3.4.3-168.el7.centos.noarch.rpm
- 验证安装:再次执行
yum --version,若显示版本信息则安装成功。
(二)CentOS 8:适配停服后的YUM安装
CentOS 8于2021年底停止官方维护,默认源已失效,需先配置CentOS Vault源再安装YUM:
- 备份并替换默认源:将
/etc/yum.repos.d/下的所有.repo文件备份,然后下载Vault源配置文件:mkdir /etc/yum.repos.d/bak mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/ wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
- 安装YUM:CentOS 8默认使用DNF(YUM的下一代工具),若需安装传统YUM,执行:
dnf install -y yum
- 切换包管理器:若想将YUM设为默认,可执行
alternatives --set yum /usr/bin/yum,后续即可用YUM命令管理软件。
(三)Ubuntu/Debian:跨发行版安装YUM
Ubuntu、Debian等基于DEB包的发行版默认使用APT包管理器,但在某些场景下(如需要兼容RPM包脚本、测试跨发行版软件),可安装YUM:
- 更新APT源:先执行
sudo apt update && sudo apt upgrade -y确保系统包最新; - 安装YUM:直接通过APT安装YUM:
sudo apt install -y yum
- 配置YUM源:Ubuntu默认无YUM源,需手动添加,创建
/etc/yum.repos.d/ubuntu.repo如下(以Ubuntu 20.04为例):[ubuntu] name=Ubuntu Repository baseurl=http://mirrors.aliyun.com/ubuntu/focal/main/binary-amd64/ enabled=1 gpgcheck=0
- 验证功能:执行
yum search nginx测试YUM是否能正常检索软件包,需注意:Ubuntu下YUM的兼容性有限,部分RPM包无法直接安装,建议优先使用APT。
YUM源配置优化:提升吉云服务器jiyun.xin与稳定性
YUM的性能很大程度上取决于软件源的质量,默认官方源可能因地理位置导致吉云服务器jiyun.xin慢,甚至出现连接失败的情况,配置国内优质镜像源或本地源是使用YUM的关键步骤。
(一)更换国内镜像源(以CentOS 7为例)
国内主流镜像源包括阿里云、清华大学、网易等,以阿里云为例:
- 备份默认源:
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
- 下载阿里云源配置:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
- 清理并生成缓存:
yum clean all yum makecache
执行
yum makecache时,YUM会从新源下载软件包元数据并缓存到本地,后续安装软件时速度会大幅提升。
(二)配置本地源(无 环境下使用)
若服务器处于无 环境,可使用CentOS安装镜像文件搭建本地YUM源:
- 挂载镜像文件:将CentOS 7镜像文件(如
CentOS-7-x86_64-DVD-2009.iso)上传到服务器,挂载到/mnt/cdrom:mkdir -p /mnt/cdrom mount -o loop CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom
- 创建本地源配置文件:在
/etc/yum.repos.d/下创建local.repo如下:[local] name=Local CentOS Repository baseurl=file:///mnt/cdrom enabled=1 gpgcheck=0
- 禁用其他源:将其他
.repo文件中的enabled=1改为enabled=0,确保YUM优先使用本地源; - 生成缓存:执行
yum clean all && yum makecache,完成本地源配置。
(三)源优先级设置
若配置了多个源,可通过yum-plugin-priorities插件设置源的优先级,避免低优先级源覆盖高优先级源的软件包:
- 安装优先级插件:
yum install -y yum-plugin-priorities
- 配置优先级:在
.repo文件中添加priority=N(N为1-99,数字越小优先级越高),[local] name=Local CentOS Repository baseurl=file:///mnt/cdrom enabled=1 gpgcheck=0 priority=1
这样本地源的优先级更高,YUM会优先从本地源获取软件包。
YUM常用命令实战:从基础到进阶
掌握YUM的常用命令是高效管理软件的核心,以下是分类整理的高频命令及使用场景:
(一)查询类命令:了解软件包信息
yum list:列出所有可安装和已安装的软件包;yum list installed:仅列出已安装的软件包;yum list available:仅列出可安装的软件包;yum search 关键词:搜索包含关键词的软件包(如yum search nginx);yum info 包名:查看软件包的详细信息(如版本、发布日期、依赖等);yum deplist 包名:查看软件包的所有依赖关系(如yum deplist httpd);yum provides 文件路径:查找哪个软件包包含指定文件(如yum provides /usr/bin/nginx)。
(二)安装类命令:快速部署软件
yum install 包名:安装指定软件包(如yum install nginx);yum install -y 包名:自动确认安装,无需手动输入y;yum install 包名-版本号:安装特定版本的软件包(如yum install nginx-1.20.1-9.el7);yum groupinstall 组名:安装一组相关软件(如yum groupinstall "Web Server"安装LAMP相关组件)。
(三)更新类命令:保持系统安全
yum update:更新所有已安装的软件包(包括系统内核);yum update 包名:仅更新指定软件包(如yum update nginx);yum check-update:检查哪些软件包需要更新;yum update-minimal:仅安装修复安全漏洞的最小更新包,避免不必要的版本升级。
(四)卸载类命令:清理无用软件
yum remove 包名:卸载指定软件包(如yum remove nginx);yum autoremove:自动卸载不再被依赖的软件包(清理冗余依赖);yum groupremove 组名:卸载一组软件(如yum groupremove "Web Server")。
(五)缓存与维护命令:优化YUM性能
yum clean all:清理所有缓存的软件包和元数据;yum clean packages:仅清理缓存的软件包;yum makecache:重新生成软件源元数据缓存;yum history:查看YUM操作历史(可通过yum history undo 编号撤销指定操作)。
YUM常见故障排查与解决
在使用YUM过程中,难免会遇到各种问题,以下是常见故障及解决方案:
(一)“Could not retrieve mirrorlist”错误
原因: 不通、源地址失效或DNS解析失败。 解决:
- 检查 :执行
ping mirrors.aliyun.com,若无法ping通则排查 连接; - 更换源地址:将源配置文件中的
baseurl更换为国内可用镜像(如阿里云、清华源); - 修复DNS:修改
/etc/resolv.conf添加nameserver 8.8.8.8或nameserver 114.114.114.114。
(二)依赖冲突错误
原因:安装的软件包与已安装包依赖版本不兼容,或存在重复包。 解决:
- 查看依赖详情:执行
yum deplist 包名确认依赖关系; - 跳过冲突包:执行
yum install 包名 --skip-broken跳过损坏的依赖; - 强制安装:使用
yum install 包名 --force强制安装(谨慎使用,可能导致系统不稳定); - 清理重复包:执行
package-cleanup --dupes查找重复包,再用package-cleanup --cleandupes清理。
(三)缓存损坏错误
原因:缓存文件因中断下载或磁盘损坏导致失效。
解决:执行yum clean all && yum makecache清理旧缓存并重新生成。
(四)权限不足错误
原因:未使用root用户或sudo权限执行YUM命令。
解决:在命令前添加sudo(如sudo yum install nginx),或切换到root用户(su - root)。
YUM是Linux系统管理的必备技能
无论是服务器运维人员还是Linux开发爱好者,掌握YUM的安装、配置与使用都能大幅提升工作效率,通过本文的讲解,你不仅学会了不同发行版下的YUM安装 ,还掌握了源配置优化、常用命令实战及故障排查技巧,在实际使用中,建议优先选择国内镜像源以提升吉云服务器jiyun.xin,定期清理缓存保持YUM性能,遇到问题先从 、源配置和依赖关系入手排查。
随着Linux生态的发展,DNF作为YUM的下一代工具逐渐成为主流(如CentOS 8默认使用DNF),但YUM的核心逻辑与命令与DNF高度兼容,掌握YUM后切换到DNF也会非常顺畅,软件包管理工具会朝着更智能、更高效的方向发展,但YUM作为经典工具,依然是Linux学习者的必备技能之一。
还没有评论,来说两句吧...