如何使用“yum downloadonly”只下载包而不安装

我们可以通过多种方式下载 yum 软件包而无需安装它。
帖子中描述了 2 种最常用的方法。

  1. 使用yum的“downloadonly”插件
  2. 使用“yumdownloader”实用程序。
更多: zhilu jiaocheng

方法 2:使用“yumdownloader”实用程序

“yumdownloader”命令在我们要下载已安装在系统上的软件包时特别有用。

  1. 安装 yum-utils 包:
# yum install yum-utils
  1. 运行命令,然后运行所需的包。
# yumdownloader [package]

例如,要下载系统上已安装的 mutt 软件包,请使用以下命令。

# yumdownloader mutt
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.vcu.edu
 * epel: mirror.us.leaseweb.net
 * extras: mirror.lug.udel.edu
 * nux-dextop: li.nux.ro
 * updates: mirror.wdc1.us.leaseweb.net
mutt-1.5.21-27.el7.x86_64.rpm                 | 1.4 MB  00:00:00
  1. 你会在当前工作目录中找到最新下载的 mutt 包。
# ls -lrt mutt-1.5.21-27.el7.x86_64.rpm 
-rw-r--r--. 1 root root 1444476 Aug 10 18:21 mutt-1.5.21-27.el7.x86_64.rpm

我们还可以指定下载目录来下载包。
例如,

# yumdownloader --destdir=/var/tmp mutt

注意:如果我们需要下载依赖项,请务必在 yumdownloader 实用程序中添加 -resolve。

方法一:使用yum的“downloadonly”插件

  1. 安装包含“downloadonly”插件的包:
# yum install yum-plugin-downloadonly
  1. 使用“-downloadonly”选项运行 yum 命令,如下所示:
# yum install --downloadonly --downloaddir=[directory] [package]

例如,要下载 Firefox 的软件包而不实际安装它,请使用如下所示的命令:

# yum install --downloadonly --downloaddir=/tmp firefox

firefox 包被下载到指定的 /tmp 目录中。
确认 RPM 文件在指定的下载目录中可用。

# ls -lrt /tmp/firefox-52.5.0-1.el7.centos.x86_64.rpm 
-rw-r--r--. 1 root root 87273716 Nov 17 16:21 /tmp/firefox-52.5.0-1.el7.centos.x86_64.rpm

注意:如果不指定-downloaddir选项,文件默认保存在rhel-{arch}-channel/packages中的/var/cache/yum/

  1. 也可以使用downloadonly插件同时下载多个包。
    例如,要同时下载 firefox 和 mutt 的软件包,请使用以下命令:
# yum install --downloadonly --downloaddir=/tmp firefox mutt

注意:如果只指定包名,则下载最新的可用包(如 sshd)。
否则,我们可以指定完整的包名称和版本(例如 mutt-1.5.21-27.el7.x86_64)。

日期:2020-09-17 00:13:33 来源:oir作者:oir