YUM工具
YUM工具
yum基本概述
什么是yum
YUM,全称Yellow dog Updater, Modifier,是一个自由、开源的命令行软件包管理工具,运行在基于RPM包管理的的Linux操作系统(例如RedHat、CentOS、Suse等)。
基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
什么是yum源
包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称之为yum源或者是yum仓库,这个源可以是本地的也可以是网络的。
YUM源的配置
# 使用阿里云的yum源
http://mirrors.aliyun.com
# 系统中需要的基础yum源
base源:和镜像中的Linux基础rpm包差不多
epel源:一些扩展安装包
# yum源的配置文件存放目录
[root@localhost~]# ll /etc/yum.repos.d/
-rw-r--r--1 root root 1759 Jul 52021 CentOS-Base.repo
-rw-r--r--1 root root 664 Jul 52021 epel.repo
# 1.删除所有官方yum源
[root@zls ~]# rm -f /etc/yum.repos.d/*
# 1.2 安全方式,打包 不使用yum源
[root@zls ~]# gzip -r /etc/yum.repos.d
2.下载Base源
wget-O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl-o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
## 注意:在/etc/yum.repos.d/目录下所有的yum源配置,必须以.repo结尾
- 打开对应yum源的镜像站:mirrors.aliyun.com
- 下载两个yum源
- base源:所有系统的基础软件包
- epel源:扩展软件
找到centos7复制命令
需下载wget命令才能使用
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
系统自带下载命令,无需下载
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
YUM包管理命令
使用yum查询软件包的方式
# 1.查询仓库中所有的rpm包
yum list
可以配合|grep过滤出想要的rpm包
# 2.查看仓库中所有安装包的详细信息
yum info
yum info tree (查看tree安装包的详细信息)
# 3.根据命令或文件查找该命令属于哪个rpm包
yum provides
命令注意:尽量接命令的绝对路径,不知道命令的绝对路径的情况下,*/命令
使用yum安装软件包的方式
yum安装方式:
- 本地安装
- yum localinstall -y 包名 (前提该包已经下载到服务器上了)
- yum源安装
- yum install -y 包名
- 网站上安装
- yum install -y 网站地址
自动解决依赖关系的前提条件:在你的所有yum源中都要有该软件的依赖包
使用yum重装软件包的方式
#检查软件是否存在
[root@localhost~]# rpm -q vsftpd
vsftpd-2.2.2-24.el6.x86_64
#检查vsftpd软件配置文件
[root@localhost~]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
#不小心删除vsftpd配置文件
[root@localhost~]# rm -f /etc/vsftpd/vsftpd.conf
#重新安装软件
[root@localhost~]# yum reinstall vsftpd
作用:误删除了该服务相关的任何一个文件,使用reinstall都可以恢复,但是恢复的是最初始的配置。恢复的是被误删除的文件。
reinstall的方式,必须跟最开始安装这个包的方式保持一致。如果一开始是本地安装则重装也必须接路径本地安装。否则版本可能不一致 无法重装。
使用yum更新软件包的方式
# 查看当前系统中,有哪些软件是可以更新的
[root@localhost]# yum check-update
# 更新指定的软件包
[root@localhost]# yum update -y zlib
# 更新所有可更新的软件包
[root@zlocalhost]# yum update -y
很危险,可能会将系统内核进行更新。centOS7更新成8
使用yum删除软件包的方式
[root@localhost~]# yum erase samba -y
[root@localhost~]# yum remove samba -y
yum仓库相关指令
# 查看所有源中可用的yum仓库
仓库名 仓库描述信息 多少个包
repo id repo name status
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10,072
# 查看所有源中,所有的yum仓库
[root@localhost]# yum repolist all
启用软件包:
[root@localhost~] # yum-config-manager --enable 包名
关闭软件包
[root@localhost~] # yum-config-manager --disable 包名
建议:修改yum源配置文件,开启或关闭仓库
yum缓存相关指令
## 清除所有的缓存
yum clean all
## 加载缓存
yum makecache
## 默认情况下,yum是不会下载rpm的只会安装
## 除非开启,下载的配置
vim/etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
# 把0改成1就是开启下载rpm
## 下面是yum下载后的默认路径
ll /var/cache/yum/x86_64/7/
## 下载nginx,不安装,并指定目录
yum install nginx -y --downloadonly--downloaddir=/tmp
--downloadonly:仅下载,不安装
--downloaddir:指定下载的目录
## yum clean packages
只会清除默认路径下的rpm包,不会清除指定路径的包
yum包组相关指令
# 查看有哪些包组可以安装
[root@localhost]# yum group list
# 安装包组
yum groups install 包组名字
# 卸载包组
yum groups remove 包组名字
yum历史命令
#查看历史执行yum命令
[root@localhost~]# yum history
#查询历史执行yum命令ID详细信息
[root@localhost~]# yum history info ID
#撤销历史执行过的yum命令
[root@localhost~]# yum history undo ID
YUM全局配置文件
# 仓库名字
[base]
# 仓库的描述
name=CentOS-$releasever- Base - mirrors.aliyun.com
# 仓库的地址baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
# 仓库签名检查机制
gpgcheck=1
# 仓库开启/关闭(1:开启,0:关闭,默认1)
enabled=1
# 公钥的地址
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CenOS-7
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码