yum是干什么的使用redhat,fedora的linuxer肯定都为rpm著名的dependency hell而头疼(这也是所有基于rpm发行版都有的问题)。foo is needed by bar,bar is needed by foo。要装卸个软件,还得辛辛苦苦地梳理清楚所有依赖性问题,rpm的几个搜索站点成了时常光顾的场所,如果不幸碰到循环依赖,那就只有干瞪眼的分了。 有时加个--nodeps参数,倒是眼不见,心不烦,但这样装上的软件,你能保证正常使用吗,这样卸载软件,你能保证不影响其它软件工作吗,恐怕谁也不能 给出肯定的答案。每到这时,帽子们只有看着debian的 apt暗自羡慕了。好在,这些都已经成为过去时了。基于rpm的发行版现在也有了像apt那样自 动解决依赖关系的包管理工具了。其中一个著名的就是apt4rpm,这基本上是debian系统apt的在rpm发行版的移植。但是使用Redhat和 Fedora的linuxer你们知道吗,还有一个与apt功能类似的rpm包管理系统,那就是yum。Fedora系统已经自带,Redhat也有相应 的rpm下载。与apt相比,yum的功能一点也不弱,甚至还有许多胜过apt 之处。比如说,yum是Fedora系统自带的,因此它能使用fedora官方的软件源,完成各种官方发布>的各种升级。对于第三方软件源的支持,yum也 不差,大多数支持apt的repository注,也能支持yum,比如说freshrpms,fedora.us,livna等等。此外yum有一个比较 详细的log,可以查看何时升级安装了什么软件包等。yum的代码较apt更为精简等。一。 yum是什么yum = Yellow dog Updater, Modified主要功能是更方便的添加/删除/更新RPM包。它能自动解决包的倚赖性问题。它能便于管理大量系统的更新问题注:为什么要使用yum而不用apt,最简单的原因,Fedora自带二。 yum特点*可以同时配置多个资源库(Repository)*简洁的配置文件(/etc/yum.conf)*自动解决增加或删除rpm包时遇到的倚赖性问题*使用方便*保持与RPM数据库的一致性三。 yum安装Fedora自带#rpm -ivh yum-2.0.4-2.noarch.rpm四。 yum配置注:修改和增加配置文件中的资源库,加快下载速度和拥有更多可更新的rpm包将/etc/yum.conf的内容全部替换为[main]cachedir=/var/cache/yumdebuglevel=2logfile=/var/log/yum.logpkgpolicy=newestdistroverpkg=fedora-releasetolerant=1exactarch=1[fedora-us-1]name=Fedora Core 1 -- Fedora US mirrorbaseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/os[fedora-us-1-updates]name=Fedora Core 1 updates -- Fedora US mirrorbaseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/updates[fedora-us-1-stable]name=Fedora Linux (stable) for Fedora Core 1 -- Fedora US mirrorbaseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/stable[freshrpms]name=Fedora Linux $releasever - $basearch - freshrpmsbaseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpms五。 yum应用注:当第一次使用yum或yum资源库有更新时,yum会自动下载所有所需的headers放置于/var/cache/yum目录下,所需时间可能较长。检查有哪些可更新的rpm包#yum check-update安装rpm包,使xmms可以播放mp3#yum install xmms-mp3安装mplayer,同时自动安装相关的软件#yum install mplayer删除licq包,同时删除与该包有倚赖性的包#yum remove licq注:同时会提示删除licq-gnome,licq-qt,licq-text,非常方便系统更新(更新所有可以升级的rpm包,包括kernel)#yum -y update每天定期执行系统更新#chkconfig yum on#service yum start六。 yum指令详解*rpm包的更新检查可更新的rpm包#yum check-update更新所有的rpm包#yum update更新指定的rpm包,如更新kernel和kernel source#yum update kernel kernel-source大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级#yum upgrade*rpm包的安装和删除安装rpm包,如xmms-mp3#yum install xmms-mp3删除rpm包,包括与该包有倚赖性的包#yum remove licq注:同时会提示删除licq-gnome,licq-qt,licq-text*yum暂存(/var/cache/yum/)的相关参数清除暂存中rpm包文件#yum clean packages清除暂存中rpm头文件#yum clean headers清除暂存中旧的rpm头文件#yum clean oldheaders清除暂存中旧的rpm头文件和包文件#yum clean或#yum clean all注:相当于yum clean packages + yum clean oldheaders*rpm包列表列出资源库中所有可以安装或更新的rpm包#yum list列出资源库中特定的可以安装或更新以及已经安装的rpm包#yum list mozilla#yum list mozilla*注:可以在rpm包名中使用匹配符,如列出所有以mozilla开头的rpm包列出资源库中所有可以更新的rpm包#yum list updates列出已经安装的所有的rpm包#yum list installed列出已经安装的但是不包含在资源库中的rpm包#yum list extras注:通过其它网站下载安装的rpm包*rpm包信息显示(info参数同list)列出资源库中所有可以安装或更新的rpm包的信息#yum info列出资源库中特定的可以安装或更新以及已经安装的rpm包的信息#yum info mozilla#yum info mozilla*注:可以在rpm包名中使用匹配符,如列出所有以mozilla开头的rpm包的信息列出资源库中所有可以更新的rpm包的信息#yum info updates列出已经安装的所有的rpm包的信息#yum info installed列出已经安装的但是不包含在资源库中的rpm包的信息#yum info extras注:通过其它网站下载安装的rpm包的信息*搜索rpm包搜索匹配特定字符的rpm包#yum search mozilla注:在rpm包名,包描述等中搜索搜索有包含特定文件名的rpm包#yum provides realplay七。 安全的更新freshrpms.net的rpm包安装freshrpms.net的GPG key #rpm --importhttp://freshrpms.net/packages/RPM-GPG-KEY.txt编辑/etc/yum.conf,增加以下信息到尾部[freshrpms]name=Fedora Linux $releasever - $basearch - freshrpmsbaseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpmsgpgcheck=1注:检查GPG Key# rpm -qa gpg-pubkey*显示Key信息#rpm -qi gpg-pubkey-e42d547b-3960bdf1删除Key#rpm -e gpg-pubkey-e42d547b-3960bdf1
概括了部分常用的命令包括:
自动搜索最快镜像插件: yum install yum-fastestmirror
安装yum图形窗口插件: yum install yumex
查看可能批量安装的列表: yum grouplist
1 安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2 更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包
4 删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况
5 清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers
简要命令学习:出自 “linux进阶屋” 博客
一、yum list|more 列出所有包文件,可搭配grep查询软件包,如yum list |grep kernel
二、yum info xxx 显示包xxx详细信息,即使xxx没有安装
三、yum update kernel 用yum升级内核
四、yum update 全面升级系统
五、yum list available 列出升级源上所有可以安装的包(List all packages in the yum repositories available to be installed.)
六、yum list updates 列出升级源上所有可以更新的包(List all packages with updates available in the yum repositories.)
七、yum list installed 列出已经安装的包
八、yum install xxx 安装xxx包
九、yum update xxx 升级xxx包
十、yum remove xxx 删除xxx包
-
-
-
-
+
+
+
+