yum 命令讲解

(一)yum介绍

Yum(全称为 Yellow dogUpdater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

 (二)yum使用

yum的命令形式一般是如下:    yum –选项命令包

其中选项是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(

不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。

yum的一切信息都存储在一个叫yum.reops.d目录下的配置文件中,通常位于/etc/yum.reops.d目录下。

  在这个目录下面有很多文件,都是.repo结尾的,repo文件是yum源(也就是软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用!

进入/etc/yum.repo.d目录下,

vi CentOS-Base.repo

[extras]这个表示的是名称,--->yum的ID,必须唯一,本地有多个yum源的时候,这里必须是唯一的

name=CentOS-$releasever - Base     ----->具体的yum源名字,其实相当于对它的描述描述信息  $r releasever你可以使用这个变量参考红帽企业Linux发行版,也就是说表示当前发行版的大版本号。

baseurl是镜像服务器地址,只能写具体的确定地址。下面的例子中,只能有一个baseurl,但里面可以包含多个url

mirrorlist是镜像服务器的地址列表,里面有很多的服务器地址。这里有一个变量$arch,cpu体系,还有一个变量:$basearch,cpu的基本体系组

baseurl和mirrorlist都是指向yum源的地址,不同点是包含地址的多少。你若自己写的话,我们一般只写一个地址,直接用baseurl就行

gpgcheck=0    ---->要不要验证呢,取消验证。1,使用公钥检验rpm的正确性。

gpgcheck若是1将对下载的rpm将进行gpg的校验,校验密钥就是gpgkey,一般自己的yum源是不需要检测的。gpgcheck=0,那么gpgkey就可以不填写

在来看一下yum.conf文件

cachedir=/var/cache/yum         #yum下载的RPM包的缓存目录

keepcache=0                        #缓存是否保存,1保存,0不保存。

debuglevel=2                       #调试级别(0-10),默认为2

logfile=/var/log/yum.log       #yum的日志文件所在的位置

1  yum清空缓存列表

yum clean packages 清除缓存目录下的软件包,清空的是(/var/cache/yum)下的缓存
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers

2  yum显示信息

yum list          # yum list显示所有已经安装和可以安装的程序包

这些列表里面的包的来源就是/etc/yum.repo.d。 base  docker-ce-stable  epel/x86_64/metalink   epel  extras   rpmforge  updates    

yum list rpm 显示安装包信息rpm

显示installed ,这里是包名,版本和仓库名

yum list httpd

这里是可获得包,说明还没有安装。

yum info rpm 显示安装包rpm的详细信息

3  yum安装

yum -y install httpd

如果你不加-y他会问你要不要安装。如果你想自己来控制有些包是否安装,这里不要加-y,如果你想自动安装,不进行交互,这里加入-y。这个就是yum 的安装了,非常简单。

安装完之后查询一下

yum list httpd,Installed 说明已经安装好了

4  yum删除

yum remove httpd 删除程序包httpd ,也就是卸载。

yum deplist rpm 查看程序rpm依赖情况

 

5  yum包的升级

yum check-update 检查可更新的程序
    yum update 全部更新,升级所有包,以及升级软件和系统内核,这就是一键升级。他可以更新CentOS的内核到最新版本。
    yum update package1 更新指定程序包package1,   
    yum upgrade package1 升级指定程序包package1

6  yum 解决依赖的原理

YUM 解决依赖关系问题,自动下载软件包。yum是基于C/S架构。C指的是客户端, S指的是服务器,想ftp,http,file、关于yum为什么能解决依赖关系:所有的Yum 源里面都有repodata,它里面是有XML格式文件,里面有说明需要什么包。例如上堂课实验的:mysql-server  rpm 需要:perl-DBI ,python,或者是php等等包。

7 yum 组的管理

yum进行安装的时候可以一组一组的进行安装,先来看看有那些组yumgrouplist。可用的组有这么多。

Available Environment Groups:首先是可用的环境分组。

  Compute Node  计算节点

  Infrastructure Server 基础设施服务器

  File and Print Server  文件和打印服务

  Cinnamon Desktop   Cinnamon桌面

Installed Groups:已安装的组,开发工具

  Development Tools

Available Groups:可用的组。

如果我们想以组的方式来安装,加入我想安装安全工具:

输入:yumgroupinstall "Security Tools"

看到这里询问是否要安装,当然是N不安装了。如果想直接安装,不询问的话,这里也在后面加上选项 –y。
    yum groupremove group1 删除程序组group1

参考

1 安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1

2 更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1

3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包

4 删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况

5 清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的header

参考 :https://www.cnblogs.com/qingjiaowoxiaoxioashou/p/7059701.html

原文链接:https://blog.youkuaiyun.com/shuaigexiaobo/article/details/79875730

<think>好的,我现在需要帮助用户解决关于yum命令的用法或故障排除的问题。首先,用户可能对yum的基本使用不太熟悉,所以得先介绍常用命令。记得根据系统级指令,数学公式要用$...$,不过这里可能用不上。要确保回答结构清晰,分步骤说明,并引用提供的参考资料。 首先,用户提供的引用[1]提到在RHEL 8中,yum和dnf命令可以互换使用,所以需要指出这点。然后,引用[2]提到yum history的用法,这部分可以用来讲解如何查看和管理事务历史。引用[3]给出了安装sysbench的例子,可以用来展示安装软件包的实际操作。引用[4]是关于man命令的,可能用来建议用户查看手册页获取帮助。 接下来,需要组织回答的结构。可能分为几个部分:基本命令、事务历史管理、故障排除方法、常见问题解答。每个部分都要简明扼要,使用示例代码块,如安装、更新、清理等命令。同时,在末尾生成相关问题,参考示例中的格式。 还要注意用户可能遇到的常见问题,比如软件包冲突、依赖问题、缓存错误等,需要根据引用中的信息和常规解决方法给出建议。例如,清理缓存、使用yum history回滚操作等。 检查是否需要使用数学公式,这里可能不需要,所以可以忽略。但需确保所有行内代码或命令用反引号包裹,独立代码块用三个反引号并注明语言。最后,生成的三个相关问题要围绕yum的进阶使用、故障排除和对比dnf展开。 确保引用正确,每个引用标识对应正确的来。例如,引用[1]提到yum和dnf的兼容性,引用[2]关于history命令,引用[3]是安装示例,引用[4]是man手册的使用。在回答中适当的位置添加引用标识,如清理缓存部分可能引用[2]的事务管理。 最后,保持语言口语化,避免技术术语过多,但又要准确。比如,解释事务历史时,可以说明如何撤销或重做某个操作,帮助用户理解回滚的重要性。故障排除步骤要分点列出,清晰易懂。</think>### yum 命令使用与故障排查指南 #### 一、基本命令用法 1. **安装软件包** ```bash yum install <软件包名称> # 例如安装 sysbench(引用[3]示例) yum install epel-release # 先安装 EPEL 仓库 ``` 2. **更新与升级** ```bash yum update # 更新所有已安装的软件包 yum check-update # 仅检查可用更新(不实际安装) ``` 3. **卸载软件包** ```bash yum remove <软件包名称> ``` 4. **搜索与信息查询** ```bash yum search <关键词> # 搜索软件包 yum info <软件包名称> # 查看软件包详细信息 man yum # 查看完整手册(引用[4]) ``` --- #### 二、事务历史管理(引用[2]) yum 提供历史记录功能,用于追踪操作并支持回滚: ```bash yum history list # 列出所有事务记录 yum history undo <ID> # 撤销指定ID的操作 yum history redo <ID> # 重新执行指定ID的操作 ``` --- #### 三、常见问题与解决方法 1. **依赖冲突或缺失** - 清理缓存并重建元数据: ```bash yum clean all yum makecache ``` - 尝试自动修复依赖: ```bash yum autoremove yum deplist <软件包名称> # 分析依赖关系 ``` 2. **软件配置错误** - 检查仓库文件: ```bash ls /etc/yum.repos.d/ # 查看仓库配置文件 yum repolist all # 列出所有启用的仓库 ``` 3. **命令执行卡顿** - 禁用插件测试: ```bash yum --noplugins update # 临时禁用插件 ``` --- #### 四、注意事项 - **RHEL/CentOS 8+ 系统的兼容性**:`yum` 和 `dnf` 命令可互换使用(引用[1]),操作体验一致。 - **历史记录的重要性**:通过 `yum history` 可快速定位问题操作并回滚(引用[2])。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值