yum 用法整理
基本指令
- 安装套件:
yum install 套件名称
- 升级套件:
yum update 套件名称
- 升级全部套件:
yum update
- 升级全部套件及发行版本 (请小心使用):
yum upgrade
- 移除套件:
yum remove 套件名称
- 清除暂存盘 (/var/cache/yum):
yum clean all
查询功能
- 列出所有的套件,包含已安装、可安装:
yum list
或列出特定套件:
yum list 套件名称
或加上万用字符:
yum list 套件名称*
- 列出所有已安装的套件:
yum list installed
相当于:
rpm -qa
或列出特定套件:
yum list installed 套件名称
或加上万用字符:
yum list installed 套件名称*
相当于:
rpm -q 套件名称
不过更建议用 yum info 指令:
yum info 套件名称
也可以知道套件是否已安装,并且显示更多的套件资讯。
- 查询可更新的套件:
yum list updates
或:
yum check-update
- 查询套件资讯:
yum info 套件名称
或加上万用字符:
yum info 套件名称*
- 搜寻套件:
yum search 关键字
ex:
yum search zlib
- 查询特定档案存在于什么套件之中:
yum provides 档案名称 或: yum provides */档案名称 或: yum resolvedep 档案名称
ex:
yum provides libz.* 或: yum provides */nslookup 或: yum resolvedep libz.so.1
套件组
- 查看已安装与可安装的套件组:
yum grouplist
- 安装套件组:
yum groupinstall "套件组名称"
ex:
yum groupinstall "KDE Desktop"
- 升级套件组:
yum groupupdate "套件组名称"
- 移除套件组:
yum groupremove "套件组名称"
- 查看套件组资讯:
yum groupinfo "套件组名称"
下载 RPM 档
下载 RPM 档至指定目录:
yum install --downloadonly --downloaddir=储存路径 套件名称
ex:
yum install --downloadonly --downloaddir=/tmp/nginx nginx
注意事项:
- yum 所下载的 RPM 档是基于目前的系统环境,会下载系统所缺少的套件,以及相依的套件。换言之,如果你要下载的套件在目前的系统已经安装过了,yum 便不会再单独下载了。
- 建议一定要加 --downloaddir 参数来指定档案的储存路径! 如果没有加此参数,那么默认会下载到:
/var/cache/yum/x86_64/版本/套件库/packages/
安装 RPM 档
本地安装 RPM 档:
yum localinstall 档案名称
另外要说明的是,如果你要在本地安装的 RPM 档有“相依套件”需要一并安装,则其相依套件仍会经由 yum 去下载回来,ex:
$ yum localinstall nginx-1.10.3-1.el6.x86_64.rpm ... ====================================================================================== Package Arch Version Repository Size ====================================================================================== Installing: nginx x86_64 1.10.3-1.el6 /nginx-1.10.3-1.el6.x86_64 1.3 M Installing for dependencies: nginx-all-modules noarch 1.10.3-1.el6 epel 7.9 k nginx-filesystem noarch 1.10.3-1.el6 epel 8.7 k nginx-mod-http-geoip x86_64 1.10.3-1.el6 epel 14 k nginx-mod-http-image-filter x86_64 1.10.3-1.el6 epel 16 k nginx-mod-http-perl x86_64 1.10.3-1.el6 epel 26 k nginx-mod-http-xslt-filter x86_64 1.10.3-1.el6 epel 16 k nginx-mod-mail x86_64 1.10.3-1.el6 epel 43 k nginx-mod-stream x86_64 1.10.3-1.el6 epel 36 k Transaction Summary ====================================================================================== Install 9 Package(s) Total size: 1.5 M Total download size: 168 k Installed size: 1.6 M
如果你本来就已经经由 --downloadonly 参数将全部的相依套件都下载回来了,你不希望 yum 再下载一次,那么你可以将所有的套件档案放在同一个目录,安装时的档案名称改用 *.rpm 来安装:
$ yum localinstall *.rpm ... ============================================================================================================ Package Arch Version Repository Size ============================================================================================================ Installing: nginx x86_64 1.10.3-1.el6 /nginx-1.10.3-1.el6.x86_64 1.3 M nginx-all-modules noarch 1.10.3-1.el6 /nginx-all-modules-1.10.3-1.el6.noarch 0.0 nginx-filesystem noarch 1.10.3-1.el6 /nginx-filesystem-1.10.3-1.el6.noarch 0.0 nginx-mod-http-geoip x86_64 1.10.3-1.el6 /nginx-mod-http-geoip-1.10.3-1.el6.x86_64 17 k nginx-mod-http-image-filter x86_64 1.10.3-1.el6 /nginx-mod-http-image-filter-1.10.3-1.el6.x86_64 21 k nginx-mod-http-perl x86_64 1.10.3-1.el6 /nginx-mod-http-perl-1.10.3-1.el6.x86_64 53 k nginx-mod-http-xslt-filter x86_64 1.10.3-1.el6 /nginx-mod-http-xslt-filter-1.10.3-1.el6.x86_64 20 k nginx-mod-mail x86_64 1.10.3-1.el6 /nginx-mod-mail-1.10.3-1.el6.x86_64 96 k nginx-mod-stream x86_64 1.10.3-1.el6 /nginx-mod-stream-1.10.3-1.el6.x86_64 73 k Transaction Summary ============================================================================================================ Install 9 Package(s) Total size: 1.6 M Installed size: 1.6 M
其它说明
当你用 yum 自动更新所有的套件时,如果不想更新 Kernel 的话,请编辑 /etc/yum.conf,在 [main] 区段加入一行:
exclude=kernel*
错误处理
- 当安装套件时出现错误讯息:
pkgKey xxx doesn't exist in repo base
你可以执行:
yum clean metadata
解决这个问题。
- 当下载 RPM 档时出现错误讯息:
Command line error: no such option: --downloadonly
表示你的 yum 版本较旧,需要再安装一个 yum-plugin-downloadonly 套件:
yum install yum-plugin-downloadonly
No comments yet.