Linux系统如何安装yum?具体步骤和注意事项有哪些?

在Linux系统中,yum(Yellowdog Updater Modified)是一个广泛使用的包管理工具,主要用于基于Red Hat的发行版,如CentOS、RHEL(Red Hat Enterprise Linux)等,它能够自动解决软件包之间的依赖关系,简化软件的安装、更新和卸载过程,并非所有Linux发行版都默认安装yum,尤其是一些轻量级或非Red Hat系的发行版,本文将详细介绍在不同Linux系统中如何安装yum,包括安装前的检查、不同发行版的安装步骤、yum源的配置以及常见问题的解决方法。

linux 如何安装 yum

检查系统是否已安装yum

在尝试安装yum之前,首先需要确认系统中是否已存在该工具,打开终端,输入以下命令:

yum --version

如果系统已安装yum,会显示yum的版本信息(如“yum 3.4.3-168.el7.centos.noarch”);如果未安装,终端会提示“command not found”。

也可以通过以下命令检查yum相关的包是否已安装:

rpm -qa | grep yum

该命令会列出系统中所有包含“yum”关键字的RPM包,如果无输出则表示未安装。

基于Red Hat系发行版的yum安装

Red Hat、CentOS、RHEL等发行版通常默认已安装yum,但最小化安装的系统可能缺失,以下是此类系统中yum的安装步骤

使用已配置的yum源安装(推荐)

如果系统能够访问网络,且已配置官方yum源(如CentOS的Base、Extras等源),可直接通过以下命令安装yum:

sudo yum install yum

如果yum本身缺失,可能导致上述命令无法执行,此时可尝试通过rpm命令手动安装核心yum包,从官方镜像源下载所需的yum包(以CentOS 7为例,需下载yum、yum-metadata-parser、yum-plugin-fastestmirror等包)。

从阿里云镜像站下载(需根据系统版本调整链接):

wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-3.4.3-168.el7.centos.noarch.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm

下载完成后,使用rpm命令安装(需按依赖顺序安装):

linux 如何安装 yum

sudo rpm -ivh yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
sudo rpm -ivh yum-3.4.3-168.el7.centos.noarch.rpm
sudo rpm -ivh yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm

通过本地光盘镜像安装

如果系统无法访问网络,可通过本地CentOS/RHEL安装光盘镜像配置yum源,具体步骤如下:
(1)将光盘镜像挂载到指定目录(如/mnt/cdrom):

sudo mount /dev/cdrom /mnt/cdrom

(2)创建本地yum源配置文件(如/etc/yum.repos.d/local.repo),内容如下:

[local]
name=Local CentOS Repository
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0

(3)清理并生成缓存:

sudo yum clean all
sudo yum makecache

(4)安装yum包(如果缺失):

sudo yum install yum --downloadonly --downloaddir=/tmp  # 仅下载不安装
sudo rpm -ivh /tmp/yum-*.rpm  # 手动安装下载的包

Fedora发行版的yum处理

Fedora较新版本(如Fedora 22及以上)默认使用dnf(Dandified Yum)作为包管理器,它是yum的下一代替代品,命令语法与yum兼容,如果仍需使用yum,可通过以下步骤安装:

  1. 检查dnf是否已安装

    dnf --version

    如果已安装dnf,可直接使用dnf命令替代yum(大部分命令可直接替换,如dnf install代替yum install)。

  2. 安装yum兼容包
    如果确实需要yum工具,可安装yum包(实际为dnf的兼容层):

    sudo dnf install yum

    安装后,yum命令会调用dnf的核心功能,实现与yum相同的操作。

    linux 如何安装 yum

其他Red Hat系发行版的yum安装

Scientific Linux

Scientific Linux与CentOS高度相似,默认已安装yum,若缺失可参考CentOS的安装方法,从官方镜像源下载rpm包安装。

Oracle Linux

Oracle Linux默认使用yum,若需重新安装,可通过Oracle的公共yum源配置后安装,步骤与CentOS一致。

非Red Hat系发行版的yum安装(不推荐)

对于非Red Hat系的发行版(如Debian、Ubuntu、openSUSE等),yum并非原生支持的包管理工具(Debian/Ubuntu使用apt,openSUSE使用zypper),强行安装yum可能会导致系统包管理混乱,因此不建议尝试。

若因特殊需求需要类似yum的依赖解析功能,可考虑以下替代方案:

  • Debian/Ubuntu:使用apt,其依赖解析能力完善,命令如apt installapt update
  • openSUSE:使用zypper,支持依赖自动解析和仓库管理。
  • Arch Linux:使用pacman,通过pacman -S安装并自动处理依赖。

yum常见问题及解决

提示“Cannot retrieve repository metadata (repomd.xml)”

原因:yum源配置错误或网络无法连接。
解决

  • 检查网络连接:ping mirrors.aliyun.com(测试阿里云镜像)。
  • 检查yum源配置文件(如/etc/yum.repos.d/CentOS-Base.repo),确保baseurl正确(如http://mirrors.aliyun.com/centos/$releasever/os/$basearch/)。
  • 清理yum缓存:sudo yum clean all,然后重新生成缓存:sudo yum makecache

安装包时提示“Error: Package: xxx.x86_64 (base): Requires: yyyy”

原因:软件包依赖冲突,目标包需要依赖的包未安装或版本不匹配。
解决

  • 使用yum install yyyy安装依赖包。
  • 如果依赖版本冲突,可通过yum install --skip-broken跳过冲突包(但可能导致功能不完整)。
  • 更新系统所有包:sudo yum update,再尝试安装目标包。

yum常用命令及示例(表格)

命令 功能描述 示例
yum install pkg 安装指定包 sudo yum install vim
yum update 更新所有已安装包 sudo yum update
yum remove pkg 卸载指定包 sudo yum remove httpd
yum search keyword 搜索包含关键字的包 yum search "web server"
yum info pkg 显示指定包的详细信息 yum info nginx
yum list installed 列出已安装的包 yum list installed
yum clean all 清理yum缓存 sudo yum clean all
yum repolist 显示已配置的yum源列表 sudo yum repolist

相关问答FAQs

Q1:为什么我的CentOS系统最小化安装后没有yum?
A:CentOS最小化安装(Minimal Install)默认不安装yum工具,仅保留基础包,可通过以下步骤安装:
(1)配置网络或本地yum源(参考本文“二、1”或“二、2”)。
(2)使用rpm命令手动安装yum核心包(如yum-3.4.3-168.el7.centos.noarch.rpm),或通过rpm -Uvh --nodeps强制安装(忽略依赖,但可能导致功能异常)。

Q2:yum和dnf有什么区别?CentOS 8应该用哪个?
A:dnf是yum的下一代替代品,在CentOS 7中作为可选包存在,CentOS 8及后续版本默认使用dnf,主要区别包括:

  • 性能优化:dnf采用Python编写,依赖解析速度更快。
  • 插件支持:dnf支持更灵活的插件机制,如dnf history管理操作历史。
  • 命令兼容:dnf命令语法与yum基本一致(如dnf install代替yum install)。
    CentOS 8及更高版本应直接使用dnf,无需安装yum。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/20194.html

(0)
酷番叔酷番叔
上一篇 2025年8月30日 10:38
下一篇 2025年8月30日 10:55

相关推荐

  • Linux系统如何查看SVN的版本号、信息、方法及操作?

    在Linux环境下,Subversion(SVN)作为经典的集中式版本控制系统,查看版本信息是日常开发和管理中的核心操作,无论是确认客户端版本、仓库状态,还是追踪文件变更历史,掌握相关命令都能高效提升工作效率,本文将详细介绍Linux下查看SVN版本的多维度方法,涵盖客户端、仓库、文件及历史记录等场景,并辅以命……

    2025年8月22日
    12100
  • Linux下如何编写C语言代码?

    在Linux环境下进行C语言开发,是许多程序员和系统开发者的基础技能,Linux提供了强大的工具链和丰富的开发环境,支持从代码编写、编译、调试到项目管理的一系列流程,本文将详细介绍Linux下C语言开发的完整步骤,包括环境搭建、代码编写、编译运行、调试及项目管理等内容,帮助读者掌握在Linux系统中高效开发C语……

    2025年9月25日
    9700
  • Linux如何进入终端?

    在Linux系统中,终端(Terminal)是用户与系统内核交互的核心接口,通过命令行可以高效执行系统管理、程序开发、文件操作等任务,进入终端的方式因Linux发行版(如桌面版、服务器版)及使用环境(本地、远程)的不同而有所差异,以下从多个场景详细介绍进入终端的具体方法,桌面发行版图形界面下的终端进入方式大多数……

    2025年9月9日
    10800
  • Linux下JD GUI工具的具体使用方法是什么?

    在Linux环境下使用JD-GUI进行Java文件反编译是开发者常用的操作,尤其当需要分析第三方库、调试或学习Java字节码逻辑时,JD-GUI作为一款图形化反编译工具,能直观地将.class文件、JAR包或WAR包转换为可读的Java源代码,无需依赖命令行操作,适合不同技术背景的用户,以下从安装、配置、基础操……

    2025年8月24日
    11900
  • 如何安全进入Linux Shell?

    Linux系统通过Shell实现用户与内核交互,执行命令和管理系统,常用且安全的进入方式包括:系统终端、虚拟控制台(Ctrl+Alt+F1-F6)、SSH远程登录以及图形界面中的终端模拟器。

    2025年6月21日
    12600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信