yum管理工具


[TOC]

yum安装


yum安装方式
- 本地安装:
yum localinstall -y 包名 (前提该包已经下载在服务器上了)

- yum源安装:
yum install -y 命令

- 网站安装:
yum install -y http://test.driverzeng.com/Nginx_package/nginx-1.12.2-
3.el7.x86_64.rpm

自动解决依赖关系的前提条件:在你的所有yum中都要有该软件的依赖包


yum重装


yum reinstall -y 包名

作用:误删了该服务相关的任何一个文件,使用reinstall都可以恢复,但是恢复的是最初始的配置

reinstall的方式,必须跟最开始安装这个包的方式一致


yum更新


# 查看当前系统中,有哪些软件是可以更新的
[root@zxw <sub>]# yum check-update

# 更新指定的软件包
[root@zxw </sub>]# rpm update -y 包名

# 更新所有可更新的软件包
[root@zxw <sub>]# rpm update -y(此命令危险)
原因:
[root@zxw </sub>]# yum check-update|grep kernel
kernel.x86_64 3.10.0-1160.62.1.el7 updates
kernel-tools.x86_64 3.10.0-1160.62.1.el7 updates
kernel-tools-libs.x86_64 3.10.0-1160.62.1.el7 updates
[root@zxw ~]# uname -a
Linux zxw 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
(如果执行了这个命令它会把内核也更新了,如果内核更新了当前的系统版本也就更新了)


yum卸载


[root@zxw <sub>]# yum erase -y 包名
[root@zxw </sub>]# yum remove -y 包名


yum仓库指令


# 查看所有源中可用的yum仓库
[root@zxw <sub>]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
仓库名(包) 仓库描述 仓库状态(多少个)
repo id repo name status
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10,072
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13,751
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 509
nginx-stable/7/x86_64 nginx stable repo 262
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 3,728
repolist: 28,322

# 查看所有源中,所有的yum仓库
[root@zxw </sub>]# yum repolist all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
仓库名(包) 仓库描述 仓库状态(多少个)
repo id repo name status
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com enabled: 10,072
centosplus/7/x86_64 CentOS-7 - Plus - mirrors.aliyun.com disabled
contrib/7/x86_64 CentOS-7 - Contrib - mirrors.aliyun.com disabled
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 enabled: 13,751
epel-debuginfo/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 - disabled
epel-source Extra Packages for Enterprise Linux 7 - x86_64 - disabled
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com enabled: 509
nginx-mainline/7/x86_64 nginx mainline repo disabled
nginx-stable/7/x86_64 nginx stable repo enabled: 262
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com enabled: 3,728
repolist: 28,322


# 使用 yum-config-manager
# 1.没有命令,要安装命令
[root@zxw <sub>]# yum install -y yum-config-manager
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
No package yum-config-manager available.
Error: Nothing to do

# 2.查询该命令属于那个包
[root@zxw </sub>]# yum provides */yum-config-manager
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
yum-utils-1.1.31-54.el7_8.noarch : Utilities based around the yum package manager
Repo : base
Matched from:
Filename : /usr/bin/yum-config-manager

# 3.安装对应的rpm包
[root@zxw <sub>]# yum install -y yum-utils

# 修改yum源配置文件,开启或关闭仓库
# 1.开启
[root@zxw </sub>]# yum-config-manager --enable nginx-mainline
# 2.关闭
[root@zxw ~]# yum-config-manager --disable nginx-mainline


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下载后rpm包的默认路径
[root@zxw <sub>]# ll /var/cache/yum/x86_64/7/
total 28
drwxr-xr-x. 4 root root 4096 Apr 24 14:56 base
drwxr-xr-x. 4 root root 33 Apr 23 21:33 centosplus
drwxr-xr-x. 4 root root 33 Apr 23 21:33 contrib
drwxr-xr-x. 4 root root 4096 Apr 24 14:56 epel
drwxr-xr-x. 4 root root 33 Apr 23 21:33 epel-debuginfo
drwxr-xr-x. 4 root root 33 Apr 23 21:33 epel-source
drwxr-xr-x. 4 root root 4096 Apr 24 14:56 extras
drwxr-xr-x. 4 root root 33 Apr 23 21:33 nginx-mainline
drwxr-xr-x. 4 root root 4096 Apr 24 14:56 nginx-stable
-rw-r--r--. 1 root root 202 Apr 24 14:57 timedhosts
-rw-r--r--. 1 root root 107 Apr 24 14:56 timedhosts.txt
drwxr-xr-x. 4 root root 4096 Apr 24 14:57 updates

# 下载tree,不安装,并指定目录
yum install tree -y --downloadonly --downloaddir=/tmp

--downloadonly:仅下载,不安装
--downloaddir:指定下载的目录

# yum clean packages
只会清除默认路径下的包

举例
[root@zxw </sub>]# find /var/cache/yum/ -type f -name '*.rpm'
/var/cache/yum/x86_64/7/base/packages/tree-1.6.0-10.el7.x86_64.rpm
[root@zxw <sub>]# ll /tmp
total 56
-rw-r--r--. 1 root root 47508 Jul 4 2014 tree-1.6.0-10.el7.x86_64.rpm
-rw-------. 1 root root 236 Apr 24 15:31 yum_save_tx.2022-04-24.15-31._nKsFC.yumtx
-rw-------. 1 root root 236 Apr 24 15:32 yum_save_tx.2022-04-24.15-32.KhBb_m.yumtx
[root@zxw </sub>]# yum clean packages
Loaded plugins: fastestmirror
Cleaning repos: base epel extras nginx-stable updates
1 package file removed
[root@zxw <sub>]# find /var/cache/yum/ -type f -name '*.rpm'
[root@zxw </sub>]# ll /tmp
total 56
-rw-r--r--. 1 root root 47508 Jul 4 2014 tree-1.6.0-10.el7.x86_64.rpm
-rw-------. 1 root root 236 Apr 24 15:31 yum_save_tx.2022-04-24.15-31._nKsFC.yumtx
-rw-------. 1 root root 236 Apr 24 15:32 yum_save_tx.2022-04-24.15-32.KhBb_m.yumtx


yum包组管理命令


# 查看有哪些包组可以安装
[root@zxw ~]# yum group list

# 安装包组
yum groups install 包组名字

# 卸载包组
yum groups remove 包组名字

# 没太大必要,应为最开始安装系统的时候选择的是最小化安装,安装其他的包组反而麻烦)


[root@zxw ~]# yum group list
Loaded plugins: fastestmirror
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Available Environment Groups:
Minimal Install
Compute Node
Infrastructure Server
File and Print Server
Cinnamon Desktop
MATE Desktop
Basic Web Server
Virtualization Host
Server with GUI
GNOME Desktop
KDE Plasma Workspaces
Development and Creative Workstation
Available Groups:
Cinnamon
Compatibility Libraries
Console Internet Tools
Development Tools
Educational Software
Electronic Lab
Fedora Packager
General Purpose Desktop
Graphical Administration Tools
Haskell
LXQt Desktop
Legacy UNIX Compatibility
MATE
Milkymist
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
TurboGears application framework
Xfce
Done

yum历史命令


# 查看yum的历史操作
[root@zxw <sub>]# yum history
Loaded plugins: fastestmirror
命令的ID 执行的命令 执行的时间 动作 操作几个包
ID | Login user | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------
9 | root <root> | 2022-04-24 16:06 | Erase | 1
8 | root <root> | 2022-04-24 15:38 | Install | 1
7 | root <root> | 2022-04-24 15:28 | Erase | 1
6 | root <root> | 2022-04-23 21:57 | Update | 1
5 | root <root> | 2022-04-23 21:50 | I, U | 5
4 | root <root> | 2022-04-23 16:05 | Install | 31
3 | root <root> | 2022-04-22 09:45 | Install | 1 <
2 | root <root> | 2022-04-21 21:31 | Install | 1 ><
1 | System <unset> | 2022-03-15 17:28 | Install | 304 >
history list

# 查看某个历史操作的详细信息
yum history info ID
[root@zxw </sub>]# yum history info 5

# 撤销历史操作:一般撤销更新操作
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-CentOS-7


公钥:锁
私钥:钥匙