linux下离线环境得安装
关于在离线linux服务器上安装python环境、python包得各种问题和坑(linux是只有yum得情况下)、
1、第一种:安装python->逐个安装python包->用pip的方式
问题l:如果涉及的python包需要安装c库就比较麻烦,比如说gdal的安装需要sqlite、proj的tar源码进行编译安装环境,版本也容易出错。
2、首先是要把python环境进行安装
可以直接通过离线包得形式,上传tar包,然后yum安装
可以通过conda得方式进行安装,下载离线得miniconda得sh,然后进行安装,这样安装得软件是miniconda的python包默认自带的,但是有没有可以直接下载带比较全的miniconda包?
conda得安装目录结构是默认在/root/miniconda3下面,下面就是默认的base环境,具体的pkgs包是存放所有需要安装各种不同版本python包的缓存目录,不管是新建的环境还是base环境都是放在这儿,这个空间不够可以在安装conda的时候设置没有缓存
envs下面是新建的环境,新建环境除了pkgs,其他的和base保持一致,
环境的lib下面是环境用到的c和c++库,以及python库,像这样:/root/miniconda3/envs/myenv/lib/python3.7,根目录是python包基础包,sitepackage下是python自己需要的包
所以需要迁移的化,如果目前目标py版本和当前一致,正常下都可以直接复制sitepackage包进行替换。如果涉及到C库的,需要把基础包进行替换,(问题可能是:安装c库比如在usr/local/lib下面可能也需要复制过去,这样影响较大)
如果这样不行,最好在离线linux新建一个conda环境,然后把整体的env都迁移过来
最后设置默认的环境为新建的环境就可以了,注意是在basrc里面进行设置
3、现在有一个问题就是java的gdal环境在上面设置后,会出现找不到gdaljin的情况,最后是通过显式的设置java库的方式给解决了,不知道什么原因 java -jar