TranslateProject/translated/tech/20150122 Linux FAQs with Answers--How to use yum to download a RPM package without installing it.md

56 lines
2.6 KiB
Markdown
Raw Normal View History

2015-03-07 00:08:48 +08:00
Linux 常见问题解答--如何使用yum来下载RPM包而不进行安装.
2015-01-22 10:39:22 +08:00
================================================================================
2015-03-07 00:08:48 +08:00
> **问题**:我想从Red Hat's的标准仓库中下载一个RPM包,我能使用yum命令来下载一个RPM包但是不进行安装吗?
2015-01-22 10:39:22 +08:00
2015-03-07 00:08:48 +08:00
yum是基于Red Hat的系统(如CentOS,Fedora,RHEl)上的默认包管理器.使用yum,你可以安装或者更新一个RPM包,并且他会自动解决包依赖关系.但是如果你只想将一个RPM包下载到你的系统上该怎么办呢? 例如,你可能想要获取一些RPM包在以后使用,或者将他们安装在另外的机器上.
2015-01-22 10:39:22 +08:00
2015-03-07 00:08:48 +08:00
这里说明了如何从yum仓库上下载一个RPM包.
2015-01-22 10:39:22 +08:00
2015-03-07 00:08:48 +08:00
### 方法一:yum###
2015-01-22 10:39:22 +08:00
2015-03-07 00:08:48 +08:00
yum命令本身就可以用来下载一个RPM包,标准的yum命令提供了`--downloadonly(只下载)`的选项来达到这个目的.
2015-01-22 10:39:22 +08:00
$ sudo yum install --downloadonly <package-name>
2015-03-07 00:08:48 +08:00
默认情况下,一个下载的RPM包会保存在下面的目录中:
2015-01-22 10:39:22 +08:00
/var/cache/yum/x86_64/[centos/fedora-version]/[repository]/packages
2015-03-07 00:08:48 +08:00
以上的[repository]表示下载包的来源仓库的名称(例如,base,fedora,updates)
2015-01-22 10:39:22 +08:00
2015-03-07 00:08:48 +08:00
如果你想要讲一个包下载到一个指定的目录(如/tmp):
2015-01-22 10:39:22 +08:00
$ sudo yum install --downloadonly --downloaddir=/tmp <package-name>
2015-03-07 00:08:48 +08:00
注意,如果下载的包包含了任意没有满足的依赖关系,yum将会把所有的依赖关系包下载,但是都不会被安装.
2015-01-22 10:39:22 +08:00
2015-03-07 00:08:48 +08:00
另外一个重要的事情时,在CentOS/RHEL 6或更早期的版本中,你需要安装一个单独yum插件(名称为 yum-plugin-downloadonly)才能使用`--downloadonly`命令选项:
2015-01-22 10:39:22 +08:00
$ sudo yum install yum-plugin-downloadonly
2015-03-07 00:08:48 +08:00
如果没有该插件,你会在使用yum时得到以下错误:
2015-01-22 10:39:22 +08:00
Command line error: no such option: --downloadonly
![](https://farm9.staticflickr.com/8627/15571201803_38390aae75_c.jpg)
2015-03-07 00:08:48 +08:00
### 方法二: Yumdownloader###
另外一个下载RPM包的方法就是通过一个专门的包下载工具--yumdownloader. 这个工具时yum工具包(包含了用来进行yum包管理的帮助工具套件)的子集.
2015-01-22 10:39:22 +08:00
$ sudo yum install yum-utils
2015-03-07 00:08:48 +08:00
下载一个RPM包:
2015-01-22 10:39:22 +08:00
$ sudo yumdownloader <package-name>
2015-03-07 00:08:48 +08:00
下载的包会被保存在当前目录中.你需要使用root权限,因为yumdownloader会在下载过程中更新包索引文件.与yum命令不同的是,任何依赖包不会被下载.
2015-01-22 10:39:22 +08:00
--------------------------------------------------------------------------------
via: http://ask.xmodulo.com/yum-download-rpm-package.html
2015-03-07 00:08:48 +08:00
译者:[theo-l](https://github.com/theo-l)
2015-01-22 10:39:22 +08:00
校对:[校对者ID](https://github.com/校对者ID)
2015-03-06 23:46:20 +08:00
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出