吾日三省吾身,想出类拔萃,要把知识,学牢,学全,学深,学广。
哈喽,大家好,我是koten,今天带大家一起研究下linux如何只用yum下载,而不自动安装。
方法一:
用yum自带的参数选项,如果没有自带这个,需要安装yum-plugin-downloadonly安装包。
用yum list去找个软件包测试下,就用这个NetworkManager吧。

yum -y install --downloadonly --downloaddir /tmp/ NetworkManager

搞定了,自带的参数就可以搞定,--downloadonly 是只下载不安装,并且会自动帮你解决依赖,--downloaddir是指定下载到的路径,不写就安装到了本地了。
方法二:
在网上了解到需要用yumdownloader命令,在yum-utils工具包里,咱们先下载这个yum工具包。
yum -y install yum-utils

同样下载NetworkManager,如果不加参数的话,会把rpm包下载到本地。
yumdownloader NetworkManager


咱们也可以用--destdir参数去自定义软件包存放路径,比如说安装到/tmp当中
yumdownloader --destdir /tmp/ NetworkManager

也可以通过--resolve解决软件的依赖关系
yumdownloader --destdir /tmp/ --resolve NetworkManager

现在咱们把/tmp/下的NetworkManager安装包去安装一下。
直接安装,提示要先安装依赖,尝试rpm安装依赖包,发现依赖包也需要依赖包,一层一层套娃太麻烦了,先不安装了。
[root@VMware-koten ~]#rpm -ivh /tmp/NetworkManager-1.18.8-2.el7_9.x86_64.rpm
error: Failed dependencies:
NetworkManager-libnm(x86-64) = 1:1.18.8-2.el7_9 is needed by NetworkManager-1:1.18.8-2.el7_9.x86_64
[root@VMware-koten ~]#ll /tmp/
total 4152
-rw-r--r-- 1 root root 1960152 Nov 18 2020 NetworkManager-1.18.8-2.el7_9.x86_64.rpm
-rw-r--r-- 1 root root 1774664 Nov 18 2020 NetworkManager-libnm-1.18.8-2.el7_9.x86_64.rpm
-rw-r--r-- 1 root root 169068 Nov 18 2020 NetworkManager-team-1.18.8-2.el7_9.x86_64.rpm
-rw-r--r-- 1 root root 336828 Nov 18 2020 NetworkManager-tui-1.18.8-2.el7_9.x86_64.rpm
[root@VMware-koten ~]#rpm -ivh /tmp/NetworkManager-{libnm,team,tui}-1.18.8-2.el7_9.x86_64.rpm
error: Failed dependencies:
NetworkManager(x86-64) = 1:1.18.8-2.el7_9 is needed by NetworkManager-team-1:1.18.8-2.el7_9.x86_64
NetworkManager = 1:1.18.8-2.el7_9 is needed by NetworkManager-tui-1:1.18.8-2.el7_9.x86_64
方法三:
网上看到的,先把所有yum库都下载到本地,再用离线安装的方式安装,这里就不再尝试了,是下策。
-r #指定已经本地已经配置的 yum 仓库的 repo源的名称。
-p #指定下载的路径
reposync -r epel -p /opt/local_epel #把epel源的所有安装包下载到本地。
rpm -Uvh --force --nodeps /opt/local_epel/NetworkManager-1.18.8-2.el7_9.x86_64.rpm
#忽略所有依赖关系安装NetworkManager
文章来源:https://uudwc.com/A/m3M1
我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!文章来源地址https://uudwc.com/A/m3M1