l小将 发表于 2023-1-29 04:53:18

CentOS 8 中dnf管理器如何仅下载不安装软件


在某些情况下,我们希望从命令行下载特定或一组 RPM 包而不安装它。虽然我们可以使用 wget 命令下载,但 wget 不会下载安装包的依赖项。
在 CentOS 8 中DNF(或 yum)是一个命令行包管理工具。使用 DNF我们可以安装、更新和删除 rpm 包。除此之外,它还可以用于下载软件包以及依赖项,而无需安装它们。下载指定的RPM安装包
下面使用download子命令在当前目录下载指定安装包:# dnf download cifs-utils该命令在当前目录下载cifs-utils 包。它不会下载依赖项。下面查看一下是否下载完成:
https://www.linuxprobe.com/wp-content/uploads/2022/03/image1-4.png下载 RPM 和依赖项
在 dnf 中使用--downloadonly选项,可以下载 rpm 包及其依赖项。我们还可以使用--downloaddir选项指定下载的位置。下面在/root/package目录下载ansible相关的安装包:# mkdir /root/package# dnf install -y ansible --downloadonly --downloaddir=/root/packagehttps://www.linuxprobe.com/wp-content/uploads/2022/03/image2-4.png
可以验证一下,是否已经下载了ansible和相关的依赖项:
https://www.linuxprobe.com/wp-content/uploads/2022/03/image3-5.png
现在我们就可以将这些安装包压缩起来,传入到没有连接网络的服务器中安装。# tar -zcvf ansible-installer.tar.gz /root/packagehttps://www.linuxprobe.com/wp-content/uploads/2022/03/image4-5.png下载一组安装包
假设我们要下载Development Tools组下的所有软件包,可以使用下面命令来安装:# dnf groupinstall -y "Development Tools" --downloadonly --downloaddir=/root/packagehttps://www.linuxprobe.com/wp-content/uploads/2022/03/image5-4.png
进入/root/package目录,验证一下是否下载相关软件包
https://www.linuxprobe.com/wp-content/uploads/2022/03/image6-4.png总结
每当我们使用 dnf 命令下载安装包时,如果没有使用 --downloadidr 标志,那么包将被下载到
/var/cache/dnf/baseos-xxxx/packages,
/var/cache/dnf/appstream-xxxx/packages,
/var/cache/dnf/epel-xxxx/packages目录中。https://www.linuxprobe.com/wp-content/uploads/2022/03/image7-5.png

richest41 发表于 2023-1-29 09:47:19

谢谢楼主共享资料
页: [1]
查看完整版本: CentOS 8 中dnf管理器如何仅下载不安装软件