欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

一招解决离线安装软件的依赖问题,你肯定用得到

时间:2023-06-28

        在生产环境中,安装软件包需要解决软件依赖问题;而有的依赖包在本地镜像源没有相关的依赖包。

        然而,生产环境一般都是内网,搭建网络Yum源依然无法解决软件依赖的问题。你或许会说:这好办,我把所有的依赖包一个一个的从网上下载下来,再上传到服务器不就可以安装了吗?

        该方法在软件依赖关系简单时是可以的;事实上,很多软件的依赖关系都是比较复杂的,如果依赖包较多,若网上一个一个去找,着实费劲!且有的对版本存在一定的要求,这使得这个方法可行性很低。

        那么,有什么方法可以一劳永逸的解决离线安装软件依赖关系的问题呢?

        我的解决办法就是:在我们自己可联网的虚拟机(搞运维的别说你自己的电脑没搭虚拟机)上,搭建一个网络yum源,按下面的操作将需要安装的软件的依赖包下载下来,再将依赖包传到内网的服务器上,就可以正常的安装了。

        本处以安装docker-ce-19.03.8-3.el7.x86_64.rpm(在写一键安装K8S脚本时遇到的问题)为例。

1、搭建一个阿里云的网络yum源(docker-ce)

       其他的网络yum源按其他的方法

安装必要的一些系统工具$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo$ sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo$ yum clean all #清除缓存$ yum makecache #重新生成缓存$ yum repolist #查看镜像仓库

2、不安装下载所有依赖包

$ mkdir -p /root/rpm #创建存放依赖包的目录$ sudo yum install --downloadonly --downloaddir=/root/rpm docker-ce-19.03.8-3.el7.x86_64.rpm$ tar zcvf rpm.tar.gz /root/rpm/ #将依赖包进行打包

说明:

 --downloadonly        不更新,只需下载

 --downloaddir=DLDIR   指定用于存储包的备用目录

然后将rpm.tar.gz(该软件的所有包)传到需要安装的主机上进行安装即可。

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。