CenOS下载离线依赖包神器--yumdownloader
本文只总结一些常用的用法,更详细的说明见
man yumdownloader
和info yumdownloader
。
概述
有时候所在服务器环境不能访问外网,yum安装会感到非常捉急,因为离线rpm安装的话,有很多依赖需要下载安装。因此,需要一个神器来解决问题,没错,就是它——yumdownloader 。
需要注意的是,CentOS 8中,使用了基于DNF技术(YUM v4)的 YUM 工具,dnf命令代替了原先的yum,yum命令只是软链接到dnf,
yumdownloader
实质是dnf download
命令。
安装
yumdownloader 命令在软件包 yum-utils
里面。通常系统已安装该命令,若系统未安装,则可以通过以下命令安装:
yum install yum-utils -y
语法格式
yumdownloader [options] package1 [package2] [package..]
常用参数说明
参数 | 说明 |
---|---|
-q | 静默执行 |
-v | 显示执行细节 |
-y | 所有的选择都答yes |
--downloadonly | 不更新,只下载 |
--destdir | 保存路径,默认为当前路径 |
--resolve | 解析依赖关系并下载所需的包 |
示例
以CentOS 7 minimal使用nginx镜像源安装nginx为例。
nginx镜像源配置
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
安装
yumdownloader --resolve --destdir /tmp/nginx nginx
相关依赖包已下载到/tmp/nginx
[root@test-03 ~]# ls /tmp/nginx/
nginx-1.18.0-2.el7.ngx.x86_64.rpm