最近在配置内网,无外网的服务器,纯纯记录一下踩得坑,希望看到的人不要再走这条弯路。
任务:对接在目标服务器部署目标sdk
第一天-----------------------------------------------------------------------------------------------------------------------
由于服务器是十分保密的,且通过层层套娃才能传到这个离线的目标服务器。光这个我就折腾了一个上午,最后是通过自带的本机云盘上传过去的。
对接给的pythonsdk包中有个脚本,执行发现需要python3.6版本,询问得知非3.6版本不可。没办法只能去安装3.6版了。都知道Linux有python2 里面携带着一些系统相关的命令,所以必定不可能卸载,经过查询发现服务器自带了python3版本的版本是3.7.9,所以脚本提示我无论如何都要降级去3.6版本。
好好好,那我就去安装,执行yum install python36 发现下面的进度条一直是0,直到报错。
到现在我才知道这个服务器是没有网的。。。。。。。。。。。(本人基本没有接触过linux,也就是大学实验课使用过几条命令罢了,所以这个时候十分奔溃)正好趁着这个时候去学习如何离线安装部署,这个时候我还没有意识到问题的严重性。
从python官网下载了3.6.8版本的压缩包(慢的要死,16mb下载了将近一个小时),通过一上午摸索出来的道路把安装包扔了进去,开始压缩。configrue 并且设置共享库等等基本操作,由于第一次安装并且之前从来没有经验,make&&make install之后并没有好好看日志,不知道有没有错误。直接通过软连接把 /bin 目录的 python3 指向了新安装的 3.6.8版本,全局执行python3 进入的版本正确,内心雀跃。
去执行刚才的脚本,突然发现pip3 和 yum 全部失效。 。。yum localinstall也是失效。于是决定手动去引入缺少的包,一个一个又一个,一下午过去了。这么整也不是事,决定询问接口人有没有docker,没人理会,老大哥也说明天再说于是决定下班。
第二天------------------------------------------------------------------------------------------------------------------------
学习到了yum install --downloadonly --downloaddir= 收到提醒可以去找一个有网的服务器去直接下载相关所有的依赖且不安装,说干就干,由于脚本第一步就是安装自带的几个rpm安装包,没有外网没办法只能手动执行脚本文件,安装rpm需要rpm相关依赖,发现缺失很多依赖,于是使用该命令在另一台centos7.6服务器上下载了rpm相关的依赖,扔到目标服务器上之后强制覆盖安装。
rpm -Uvh --nodeps --force *.rpm , 出事了,,,rpm崩掉。什么都干不了了。。。。。。厚着脸皮去重置服务器,继续重来,这次吸取了经验,一步一步看日志信息,发现在安装3.6版本的python就已经报错发现缺少zlib包,于是去有网的服务器去下载相关的依赖。过来安装,发现安装都有问题,信息显示缺失模块,libusl.so.6之类的,find之后发现是有的,GLIB版本部分也是有的。。。。持续心累。。。。从网上寻找对应的资源
时间过去,,,最后发现该服务器并非是我表格中提到的centos7.6系统,因为是套娃进来的,我只看到了第一层是centos,后面跳进来的服务器是华为欧拉系统。。。。。。怪不得怎么整怎么错。。。。。。第二天回到了起点。。。
第三天------------------------------------------------------------------------------------------------------------------------
从欧拉官网找到了解决办法,配置本地源,15G的ever thing,全量iso镜像包下载下来,正在通过本机网盘丢到目标服务器上,祝福我能成功,不要再撞墙了。。。 思路就是配置本地源就可以使用yum pip3等了。
好了 正在写博客的时候,上传网盘,链接中断,32的进度重置为0,奔溃ing。。。。
总结--------------------------------------------------------------------------------------------------------
配置服务器,安装sdk,一定要先清楚对应的服务器的版本;
不同版本的服务器的安装包是不兼容的;
磨练了坚忍的心态,还有不屈的精神,这就是菜鸟做事的道路。