YUM软件管理工具用法
YUM的软件管理是基于RPM包的,它从指定的服务器下载RPM包而且装置,这些软件来自于Linux开源社区,根本都是自由软件。
YUM能够主动处理软件包依靠关系,而且主动进行依靠包的装置,十分方便。
- YUM语法YUM的语法格局为yum [options] [command] [package ...],重要可选项有:
可选项 | 意义 |
-h | 显现协助信息 |
-y | 装置进程中一切的提问都答复yes |
-c | 指定装备文件 |
-v | 详细模式 |
-q | 安静模式 |
-C | 安全从缓存运行,不下载或许更新任何头文件 |
- command常见参数有:
指令 | 意义 |
install | 装置rpm软件包 |
update | 更新rpm软件包 |
check-update | 列出一切可更新的软件清单指令 |
remove | 删去软件包 |
list | 列出一切可安裝的软件清单指令 |
search | 查找软件包 |
info | 显现指定的rpm软件包的描述和概要信息 |
clean | 整理yum过期缓存 |
shell | 进入yum的shell描述符 |
resolvedep | 显现rpm软件包的依靠关系 |
localinstall | 装置本地的rpm软件包 |
localupdate | 显现本地rpm软件包进行更新 |
deplist | 显现一切的软件包依靠 |
groupinstall | 装置程序组 |
groupupdate | 更新程序组 |
groupremove | 卸载程序组 |
groupinfo | 查看程序组信息 |
- 常用的用法如下:
- 装置软件包
[root@node1]# yum install
- 铲除缓存目录下的软件包
[root@node1]# yum clean packages
- 铲除缓存目录下的headers
[root@node1]# yum clean headers
- 铲除缓存目录下旧的headers
[root@node1]# yum clean oldheaders
- 铲除缓存
[root@node1]# yum clean
- 或许
[root@node1]# yum clean all
- 相当于yum clean packages;yum clean oldheaders。
- 卸载软件包
[root@node1]# yum remove
- 查找软件包
[root@node1]# yum search
- 列出一切可更新的软件清单
[root@node1]# yum check-update
- 更新一切软件
[root@node1]# yum update
- 或许
[root@node1]# yum upgrade
- update和upgrade都是更新软件包,差异在于upgrade会删去旧的软件包,而update则会保留。
- 更新指定软件
[root@node1]# yum update
- 列出一切可装置的软件清单
[root@node1]# yum list
- 列出一切已装置的软件清单
[root@node1]# yum list installed
- YUM装备yum装备文件位置为/etc/yum.conf,默许内容如下:
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
#启用gpg校验
gpgcheck=1
# 启用yum插件
plugins=1
pkgpolicy=newest
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
- 能够看到这里装备了缓存的目录cachedir和日志目录logfile,其间缓存目录引用了两个变量basearch和releasever,其间basearch是咱们的体系硬件架构CPU指令集,能够运用指令`arch`获得,而releasever表明的是体系的发行版别,运用指令rpm -qi centos-release能够获得,以本人当前体系为例:
[root@node1]# arch
x86_64
[root@node1]# rpm -qi centos-release
Name : centos-release
Version : 7
Release : 7.1908.0.el7.centos
Architecture: x86_64
Install Date: Sun 12 Jan 2020 01:15:37 AM CST
Group : System Environment/Base
Size : 42295
License : GPLv2
Signature : RSA/SHA256, Thu 05 Sep 2019 09:19:24 PM CST, Key ID 24c6a8a7f4a80eb5
Source RPM : centos-release-7-7.1908.0.el7.centos.src.rpm
Build Date : Thu 05 Sep 2019 09:05:40 PM CST
Build Host : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem
Vendor : CentOS
Summary : CentOS Linux release file
Description :
CentOS Linux release files
- 装备YUM源yum从远程镜像源仓库拉取软件,Linux发行版默许都会供给一个yum源,例如Centos下的mirrorlist.centos.org,默许的源装备以.repo为文件格局后缀的装备文件存储在/etc/yum.repos.d目录下。以nginx repo为例,repo文件的格局如下:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
-
[nginx]为serviceid,用于区别不同的repository
-
name为repository的称号,描述信息
-
baseurl最为重要,是获取软件的路径
-
pgpcheck表明是否进行gpg校验,1为发动gpg,0为不启用
-
enabled 表明是否发动,1为发动,0为禁用
-
创立新的repo文件以后,运用yum clean all;yum makecache重建yum缓存。
当多个repo文件装备的repo仓库都有同一个软件时,将会根据yum.conf装备文件中的pkgpolicy装备项决议从哪个repo拉取软件包,默许情况下是newest,从最新版别的repo拉取,pkgpolicy的值还可所以last,则yum会将服务器id以字母表排序,并挑选最终的那个 服务器上的软件装置。
-
yum fastmirror
fastestmirror是yum供给的插件,用于在装备了多个repository的情况下探测决议哪个repository是速度最快的,这个插件十分有用,能够明显提高装置速度。
想要运用fastestmirror,则在repo装备文件中不能运用baseurl指定软件包服务器地址,而是要运用mirrorlist替代baseurl。
如Centos-Base.repo
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
- 当运用yum指令的时分能够看到以下输出,代表现已运用了fastestmirror。
[root@node1]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
我有话说: