yum
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
安装软件
yum install yourSoft
yum -y install yourSoft, 自动确认
安装监测最快镜像的插件,以便于自动选择最快的源
yum install yum-fastestmirror
同时安装xxx yyy两个软件包:
[root@zcwyou ~]# yum -y install xxx yyy
更新所有软件
[root@zcwyou ~]# yum update
只更新某款软件
[root@zcwyou ~]# yum update xxx
检查可用的更新
[root@zcwyou ~]# yum check-update
升级指定的软件xxx
[root@zcwyou ~]# yum groupinfo xxx
删除xxx软件
[root@zcwyou ~]# yum remove xxx
查看xxx软件的依赖情况
[root@zcwyou ~]# yum deplist xxx
清除缓存目录下的软件包及旧的headers,此命令相当于yum clean package加yum clean oldheaders
[root@zcwyou ~]# yum clean all
yum的查询功能
我们常会碰到这样的情况,想要安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时yum的查询功能就起作用了。你可以用 yum search keyword这样的命令来进行搜索,比如我们要则安装一个Instant Messenger,但又不知到底有哪些,这时不妨用 yum search messenger这样的指令进行搜索,yum会搜索所有可用rpm的描述,列出所有描述中和messeger有关的rpm包,于是我们可能得到 gaim,kopete等等,并从中选择。
有时我们还会碰到安装了一个包,但又不知道其用途,我们可以用yum info packagename这个指令来获取信息。
使用YUM查找软件包
[root@zcwyou ~]# yum search XXX
列出所有可安装的软件包
[root@zcwyou ~]# yum list XXX
列出所有可更新的软件包
[root@zcwyou ~]# yum list updates XXX
列出所有已安装的软件包
[root@zcwyou ~]# yum list installed XXX
Linux使用yum列出所有可更新的软件包信息
列出所有已安裝的软件包信息
[root@zcwyou ~]# yum info installed
列出所有已安裝但不在 Yum Repository 內的软件包信息
[root@zcwyou ~]# yum info extras
查询软件包提供哪些文件,比如你参考网上的命令是ifconfig
[root@zcwyou ~]# yum provides ifconfig
获取ifconfig命令所对应的软件。然后使用yum -y install net-tools
查询某软件的详细信息
[root@zcwyou ~]# yum info xxx
yum仓库的配置文件
放在/etc/yum.repos.d/目录下
[root@zcwyou ~]# ll /etc/yum.repos.d/
查看某仓库配置:
[root@zcwyou ~]# cat /etc/yum.repos.d/epel.repo
[ec2-user@ip-172-31-6-9 yum.repos.d]$ cat amzn2-core.repo
[amzn2-core]
name=Amazon Linux 2 core repository
mirrorlist=$awsproto://$amazonlinux.$awsregion.$awsdomain/$releasever/$product/$target/$basearch/mirror.list
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2
enabled=1
metadata_expire=300
mirrorlist_expire=300
report_instanceid=yes
[amzn2-core-source]
name=Amazon Linux 2 core repository - source packages
mirrorlist=$awsproto://$amazonlinux.$awsregion.$awsdomain/$releasever/$product/$target/SRPMS/mirror.list
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2
enabled=0
metadata_expire=300
mirrorlist_expire=300
report_instanceid=yes
[amzn2-core-debuginfo]
name=Amazon Linux 2 core repository - debuginfo packages
mirrorlist=$awsproto://$amazonlinux.$awsregion.$awsdomain/$releasever/$product/$target/debuginfo/$basearch/mirror.list
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2
enabled=0
metadata_expire=300
mirrorlist_expire=300
report_instanceid=yes
参考:https://www.cnblogs.com/ziliaoka/p/14952909.html
centos 多个yum源,系统怎么选择
yum配置文件:/etc/yum.conf
pkgpolicy:包的策略。一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repository中同时存在,yum应该安装哪一个,如果是newest,则yum会安装最新的那个版本。如果是last,则yum会将服务器id以字母表排序,并选择最后的那个服务器上的软件安装。一般都是选newest。
如果包在两个yum源中都有,会在下面的文件中按顺序:
/var/cache/yum/x86_64/6/timedhosts.txt
参考:https://www.cnblogs.com/liang-wei/p/6837124.html
修改yum源的优先级
ps:当既有本地yum源又有163源的时候,我们在装软件包的时候当然希望先用本地的yum源去安装,本地找不到可用的包时再使用163源去安装软件,这里就涉及到了优先级的问题,yum提供的插件yum-plugin-priorities.noarch可以解决这个问题
参考:https://blog.csdn.net/qq_28975017/article/details/77174670