Linux下的yum命令详解(朝花夕拾)

  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/yum
  debuglevel=2
  logfile=/var/log/yum.log
  pkgpolicy=newest
  distroverpkg=fedora-release
  tolerant=1
  exactarch=1
  [fedora-us-1]
  name=Fedora Core 1 -- Fedora US mirror
  baseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/os
  [fedora-us-1-updates]
  name=Fedora Core 1 updates -- Fedora US mirror
  baseurl=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 mirror
  baseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/stable
  [freshrpms]
  name=Fedora Linux $releasever - $basearch - freshrpms
  baseurl=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 --import http://freshrpms.net/packages/RPM-GPG-KEY.txt
  编辑/etc/yum.conf,增加以下信息到尾部
  [freshrpms]
  name=Fedora Linux $releasever - $basearch - freshrpms
  baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpms
  gpgcheck=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包

-

-

-

-

+

+

+

+

相关推荐