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

man yum;

check-update       检查可提供的包升级
clean              删除缓存数据
deplist            列出包依赖相关
erase              移除一个或多个包从你的系统
groupinfo          显示关于包组的细节
groupinstall       从组里安装软件包到你的系统
grouplist          列出当前的组
groupremove        在一个组中移除包从您的系统
help               显示帮助用法信息
info               显示关于包或一组包的细节信息
install            安装一个或多个软件包在你的系统
list               列出一个包或某组的包
localinstall       安装本地 RPM
makecache          生成原数据缓存
provides           Find what package provides the given value
reinstall          重新安装一个包
repolist           显示软件仓库的配置
resolvedep         决定哪个包提供了给定的依赖
search             查找包细节居给定的字符串
shell              运行交互式的yum shell
update             更新一个或多个包在你的系统
upgrade            Update packages taking obsoletes into account
Options:
-h, --help                show this help message and exit
-t, --tolerant            be tolerant of errors
-C                        从缓冲中运行,而不是升级缓存
-c  [config file]         config file location
-R  [minutes]             最大化的命令等待时间
-d  [debug level]         调试输出级别
--showduplicates          显示复制, 在repo,list/search命令下
-e  [error level]         错误输出级别
-q, --quiet               安静的操作
-v, --verbose             verbose operation
-y                        回答所有的问题为是
--version                 显示 YUM版本信息并退出
--installroot=[path]  设置为root安装
--enablerepo=[repo]       激活一个或多个仓库(支持通配符)
--disablerepo=[repo]  禁掉一个或多个仓库(支持通配符)
-x [package], --exclude=[package] 在名称或glob不包含包。
--disableexcludes=[repo]       disable exclude from main, for a repo or for everything
--obsoletes               enable obsoletes processing during updates
--noplugins               禁掉yum插件
--nogpgcheck              禁掉GPG验证检查
--disableplugin=[plugin]       用名称禁掉插件
--enableplugin=[plugin]   enable plugins by name
--skip-broken             忽略包的依赖问题
--color=COLOR             control whether color is used

本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1104132

linux中yum命令详解相关推荐

  1. linux中mkdir命令含义,Linux中mkdir命令详解

    Linux中mkdir命令详解 linux mkdir用来创建目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录. 1. 新建一个文件夹 one 2. 新建三个 ...

  2. Linux中iptraf命令详解(IP局域网监控工具)

    2019独角兽企业重金招聘Python工程师标准>>> Linux中iptraf命令详解(IP局域网监控工具) 发布时间:2017-12-27 20:46:03   作者:佚名    ...

  3. linux中create命令详解,linux中 pmap 命令详解

    通过查看帮助,返回了如下信息: Usage: pmap [options] pid [pid ...] Options: -x, --extended show details -X show eve ...

  4. linux中dd命令详解,Linux中DD命令详解

    Linux中DD命令详解 1.dd命令简介 功能:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换.可以用该命令实现DOS下的diskcopy命令的作用.先用dd命令把软盘上的 ...

  5. linux pmap命令,linux中 pmap 命令详解

    通过查看帮助,返回了如下信息: Usage: pmap [options] pid [pid ...] Options: -x,--extended show details -X show even ...

  6. linux中jstack命令详解,Linux jstack命令详解

    jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息. 如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack ...

  7. linux 修改用户dir,linux中dir命令详解

    在linux系统下dir命令的功能和ls命令差不多,主要是用以查看目录.文件权限等详细信息.下面由学习啦小编整理了linux中dir命令的详细解释,希望对你有帮助. linux中dir命令的详细解释 ...

  8. linux sudo yum命令详解,每天一个Linux命令之sudo命令详解

    Linux系统的sudo命令是切换用户身份的命令.下面由学习啦小编为大家整理了每天一个Linux命令之sudo命令详解,希望对大家有帮助! 每天一个Linux命令之sudo命令详解 sudo命令用来以 ...

  9. linux中Iscpi命令详解(四)

    lscpi命令详解 lspci是一个用来查看系统中所有PCI总线以及连接到该总线上的设备的工具. 命令格式为 lspci -参数 (不加参数显示所有硬件设备) 我的电脑lspci显示结果为: 00:0 ...

最新文章

  1. setContentView是如何一步一步被显示出来的?
  2. Python学习之continue
  3. java中Map有哪些实现类
  4. BZOJ2209 [Jsoi2011]括号序列 splay
  5. java pdf 转txt文件怎么打开_使用iText将TXT文件转换为PDF(保留格式)
  6. java通过反射调用matlab生成的jar包中的方法(1)--java调用matlab的参数个数和类型问题
  7. Qt 环境下MAPX组件的编程
  8. gbase导入sql文件_GBase数据库——常用命令
  9. python网络爬虫实战——实时抓取西刺免费代理ip
  10. 软件模块划分(实现与管理)
  11. linux查看字体并安装字体
  12. 阿里巴巴瓴羊CEO朋新宇走进清涧县,点亮“橙星计划”第一颗星
  13. 在Ubuntu20.04上安装ros
  14. UVa 1586 Molar mass(模拟)
  15. Maya中怎么一键清除历史
  16. 服务器2008系统安全狗,win2008 r2 服务器安全设置之安全狗设置图文教程
  17. Windows网络共享方式
  18. pytorch CNN手写字体识别
  19. 10分钟带你学习华为云数据库RDS
  20. Flutter 图片选取 image_picker

热门文章

  1. Binary Tree Postorder Traversal
  2. hdu 1853(Cyclic Tour)
  3. 浅谈函数调用的汇编实现细节(用栈来传递参数)
  4. [洛谷P5057][CQOI2006]简单题
  5. C++ 学习路线推荐
  6. 介绍 WebLogic 的一些结构和特点
  7. 教学思路C#之入门五 数据类型转换
  8. Java并发框架——AQS之怎样使用AQS构建同步器
  9. php代码优化 -- array_walk 和 foreach, for 的效率的比较
  10. Execute Process Task