yum命令的源起:
yum全称是Yellow dog Updater, Modified,翻译过来难道是“黄狗更新”?有点不靠谱吧,Yellow dog这个短语英语里面翻译为“卑鄙的人”,难道该翻译为“卑鄙的更新”,听起来好像是做贼似的,谁还不让你更新了咋的!其实yum之所以叫做Yellow dog Updater, Modified,是因为yum这个命令最初是安装在Yellow dog Linux这个linux的发行版本上的,不知道这个发行版本怎么起了个这名字,就像不明白古时候很多人会叫“公子黑臀”“宰我”一样。这都无关紧要,有关紧要的是不管你明不明白,它就是这么来的。
yum命令的功能:
yum的作用是自动化地进行安装、更新、移除rpm包,并在安装、更新、移除rpm包的过程中检查依赖性并自动提示用户解决,减少了Linux 用户一直头痛的rpm包的dependencies依赖问题。我们知道,我们使用rpm安装的时候,经常遇到依赖的问题,需要追根溯源的一步步安装,有点顺藤摸瓜的意思,有可能最后瓜没摸到,倒被蛇咬了,也就是说rpm的安装不仅浪费时间,而且容易出错,为了解决这个问题yum就应运而生了。
yum命令的格式:
yum [选项] 命令
先来看看常用的选项:
-h/--help #查看yum命令的帮助 -q/--quiet #我们知道使用yum命令的时候,会打印出很多信息,加上这个q选项表示不打印信息 -v/--verbose #打印使用yum命令时候的详细信息 -y/--assumeyes #使用yum的时候可能会让用户输入"y"以便命令的继续运行,加上本选项表示自动输入"y"
yum命令很奇怪,不像是我们经常见到的ls等命令,ls这类命令就只有一个命令,但是yum本身是一个命令,它的后边还可以有其他命令来完成yum命令的功能,那就来看看
yum常用的命令:
clean headers/packages/metadata/dbcache/plugins/expire-cache/rpmdb/all #清除yum的缓存 install rpm包名 #安装 remove rpm包名 #移除,不会移除掉依赖的组件 update [rpm包名] #更新 info rpm包名 #显示指定的rpm包的详细信息,这个包可以是安装过的或者是没有安装过的 list [rpm包名] #显示指定的rpm包的概要信息,这个包可以是安装过的或者是没有安装过的
上边我说了yum命令的格式,那是理论,理论终归要归于实践才行,不然就是一纸空谈,像是无根之草,没什么附着力。这篇文章我们就来找找这个“附着力”。通过下边的几个例子,我们来聊聊yum命令有哪些地方是值得注意的。
环境:centos 6.5
例子:如何安装apache服务器?apache服务器是php的服务器,很常用,怎么安装呢,是个问题,不过用yum一句话搞定:
yum -y install httpd
命令说明:
1.我们前边说了yum安装的格式是“install rpm包名”,这里的包名不是包的全名,而是包的简短名字,比如我这里安装的包的全名是“httpd-2.2.15-60.el6.centos.6.i686”,而使用yum安装的时候,只需要包名,包名一般就是版本号前边的"-"的前边的那一部分。再例如“
httpd-tools-2.2.15-60.el6.centos.6.i686”是包全名,包名就是"httpd-tools",安装的时候只需要使用"yum -y install httpd-tools"就行了。
因此要区分包名和包全名:包名一般就是版本号前边的"-"的前边的那一部分,yum安装使用包名;包全名就是这个字符串,使用rpm安装的时候要使用包全名。
2.基于前边说的yum常用命令的格式
install rpm包名 #安装 remove rpm包名 #移除,不会移除掉依赖的组件 update [rpm包名] #更新 info rpm包名 #显示指定的rpm包的详细信息,这个包可以是安装过的或者是没有安装过的 list [rpm包名] #显示指定的rpm包的概要信息,这个包可以是安装过的或者是没有安装过的
这里面的rpm包名都是指的包名,而不是包全名,在这里一并指出,以后不再赘述。
看一下执行结果,因为执行结果输出内容太多,我们自己也可以在自己的机器上执行观察一下,我在这里就不全部贴出来了,只捡重要的地方说一下:
提出几个问题放在这里:
1.第一张图片的红框里面为什么会重现aliyun(阿里云),163(网易)的网址?我的centos是6.5的,是从国外网站上下载下来的啊,怎么会有中国的网址打印出来呢?
2.第二张图片里面的Repository以及该列下边的updates、base是什么意思?对,updates、base都是仓库名,这里就牵涉到了yum源的知识。
问题的梳理:
上边提出的两个问题都是yum源的相关问题,学习了yum源,两个问题自然迎刃而解,不过再学习yum源之前我们还需要把yum的其他几个命令也过一遍,其他几个命令都简单了,我们将在yum的下篇文章介绍,在介绍完其他命令之后,我们再深入的看看yum源是怎么一回事。