有些情况下,我们需要下载rpm包组以及相关依赖,以便放到离线场景中进行安装。
方法一:通过yum/dnf参数选项来实现仅下载rpm包不安装
yum/dnf命令都提供了仅下载不安装的参数选项--downloadonly和--downloaddir=DLDIR,二者区别在于是否指定下载后的包,保存的目录。
如果不指定保存目录,那么
centos7默认会存放在/var/cache/yum/x86_64/7/[REPOSITORY]packages
rocky8相关版本默认会存放在/var/cache/dnf/[REPOSITORY]packages
例:下载docker及相关rpm包,指定保存到/root/whsir目录
dnf install --downloadonly docker --downloaddir=/root/whsir
|---|-------------------------------------------------------------| | 1 | dnf install --downloadonly docker --downloaddir=/root/whsir |
或
yum install --downloadonly docker --downloaddir=/root/whsir
|---|-------------------------------------------------------------| | 1 | yum install --downloadonly docker --downloaddir=/root/whsir |
方法二:通过yumdownloader命令实现
使用以下命令进行安装
yum install yum-utils
|---|-----------------------| | 1 | yum install yum-utils |
但是注意的是yumdownloader默认仅下载当前包到当前pwd所在的目录,默认不下载其相关依赖,即
yumdownloader docker
|---|----------------------| | 1 | yumdownloader docker |
如果想下载相关依赖包,需要增加--resolve参数选项,即
yumdownloader --resolve docker
|---|--------------------------------| | 1 | yumdownloader --resolve docker |