欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > 【环境安装】Linux-CentOS安装miniconda+GDAL(不用源码编译)+开放服务器端口号

【环境安装】Linux-CentOS安装miniconda+GDAL(不用源码编译)+开放服务器端口号

2025/5/11 13:37:14 来源:https://blog.csdn.net/qq_44833403/article/details/146805024  浏览:    关键词:【环境安装】Linux-CentOS安装miniconda+GDAL(不用源码编译)+开放服务器端口号

Linux-CentOS安装miniconda+GDAL(不用源码编译)+开放服务器端口号

文章目录

  • Linux-CentOS安装miniconda+GDAL(不用源码编译)+开放服务器端口号
    • 一、远程链接linux服务器
    • 二、安装miniconda
      • 1、下载miniconda
      • 2、定义安装路径
      • 3、自动化设置conda环境 or 手动设置
      • 4、完成miniconda安装
    • 三、安装Linux版本的GDAL - 不用源码编译
      • 1、新建conda环境、激活
      • 2、查找python-GDAL离线包、下载、安装
    • 四、安装python程序中其他的依赖包
    • 五、服务器启动程序,开放端口
      • 1、启动服务
      • 2、验证服务
      • 3、外网访问 - 开启端口号

一、远程链接linux服务器

使用MobaXterm,下载安装即可。
网址: MobaXterm free Xserver and tabbed SSH client for Windows

在这里插入图片描述

输入用户名、密码,登录到服务器中。

服务器为Linux-Centos服务器,能联网

二、安装miniconda

1、下载miniconda

管理python环境使用anaconda或者miniconda都行,我这里为了方便,使用轻量版的miniconda。

在某个目录下,下载miniconda

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

之后执行安装命令:

bash Miniconda3-latest-Linux-x86_64.sh

2、定义安装路径

安装过程中会弹出安装须知,往下读,读完后会提示是否同意,点击【Enter】查看,如果【Enter】之后不想查看,直接ctrl+c,下一步

问是否接受协议:输入【yes】

默认安装目录为:root/miniconda,这里选择默认安装路径/root/miniconda,等待安装完成即可。

3、自动化设置conda环境 or 手动设置

是否自动化conda环境,默认为【no】,输入【yes】

installation finished.
Do you wish to update your shell profile to automatically initialize conda?
This will activate conda on startup and change the command prompt when activated.
If you'd prefer that conda's base environment not be activated on startup,run the following command when conda is activated:conda config --set auto_activate_base falseYou can undo this by running `conda init --reverse $SHELL`? [yes|no]
[no] >>> yes

ps: 这里我安装的时候误触了,导致跳过了这个输入,然后我在后续输入conda list的时候显示,

报错: conda:command not found

原因:~/.bashrc 文件没有配置好 ,需要手动设置conda环境

解决方法:

(1)控制台输入:vim ~/.bashrc 打开该文件;

(2)键盘按i,切换到插入模式,在最后一行输入:export PATH=”$PATH:/root/miniconda/bin“,表示miniconda的安装路径

(3)键盘按【ESC】推出编辑模式,输入:wq,表示退出文件并保存

(4)保存更改、运行,控制台输入:source ~/.bashrc

之后再conda list,应该就正常了。

在这里插入图片描述

4、完成miniconda安装

输入conda listconda --version检查,或者新建conda环境。

在这里插入图片描述

三、安装Linux版本的GDAL - 不用源码编译

网上的教程在Linux下安装GDAL,一般都是推荐通过源码编译,需要同时安装proj、sqlite、GDAL等多个库,每个都需要从源码cmake编译,再引入到python环境中。

参考文章:

从头安装gdal库(Linux环境下的Python版)_gdal库安装-CSDN博客

Centos8 安装GDAL - 槑孒 - 博客园

鉴于我这个人比较懒,我也不想去走一遍各种踩坑的路,加上有linux联网的环境,于是我想到,我在windows环境下配置gdal,使用了.whl文件,于是我思考,linux下是否有类似的编译好的包可以直接使用,

于是我开始了我的检索之路。

1、新建conda环境、激活

conda create -n gdalEnv python=3.10.14 //新建一个名字为gdalEnv,版本号为3.10.14的python环境
conda activate gdalEnv //激活环境
conda list //查看包

在这里插入图片描述

2、查找python-GDAL离线包、下载、安装

为什么要找python-GDAL离线包?

因为直接conda安装报错:找不到环境

conda install gdal=3.6.4

在这里插入图片描述

我使用的方法: 使用已经编译好的 python库文件在linux下安装gdal

.whl是一种预编译的二进制包文件,它主要用于安装python库。简单来讲whl就是一种已经编译好的python库文件。

  • 网址1:GDAL wheels for linux - Browse Files at SourceForge.net
    在这里插入图片描述

该网址 (或许需要科学上网) 下提供了python3.6-3.9版本的linux下.whl文件,安装方式类似windows下的.whl安装,下载离线包后,拖到服务器上,执行:

pip install GDAL-3.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl

注意:安装.whl文件,一定要cd进入.whl文件所在目录下进行安装。

但我python版本为3.10,于是我继续寻找合适的离线包。

  • 网址2:GDAL wheels for linux Activity ,安装思路同上。
    在这里插入图片描述

  • 网址3:Gdal | Anaconda.org

在这里插入图片描述
在这里插入图片描述

有我需要的版本了,选择对应的linux框架(如 x86_64、aarch64、ppc64le 等)和python版本,下载对应的文件即可。

如何查看linux架构:使用 uname 命令

uname -m

输出示例

  • 如果输出为 x86_64,表示系统运行在 x86_64 架构上(即常见的 Intel 或 AMD 64 位处理器)。
  • 如果输出为 aarch64,表示系统运行在 ARMv8 架构的 64 位处理器上。
  • 如果输出为 ppc64le,表示系统运行在 PowerPC 64 位小端模式的处理器上。
  • 其他可能的输出还包括 armv7l(ARM 32 位)、s390x(IBM Z 架构)等。

在这里插入图片描述

下载好后,安装:(cd到文件路径,安装时候文件名替换成自己的)

conda install --use-local gdal-3.6.4-py310h3db3dc8_22.conda 

或者使用在线安装命令:

conda install conda-forge::gdal==3.6.4

在这里插入图片描述

安装结果:

在这里插入图片描述

在这里插入图片描述

ps:我发现使用在线的conda-forge命令这里安装时候,更新了我python版本,但是好在结果并不影响。若严格要求python版本【一定执行离线文件安装操作】。

python环境下输出验证:

from osgeo import gdal
from osgeo import osr
from osgeo import ogr

在这里插入图片描述

说明已经成功安装啦!!!!!

到此 GDAL在linux下的安装就这么轻松的结束了!!!!!!!!!

四、安装python程序中其他的依赖包

其他包的安装用版本号 conda 即可。以fastapi为例:

conda install fastapi=0.103.0

在这里插入图片描述

针对多个依赖包,迁移环境时候可以输出一个requirement.txt安装(但如果gdal在依赖里就无法批量了,我试过,其他的可以),或者教大家一个笨方法:直接启动程序,缺啥补啥……

conda install如果无包,直接使用pip install,一般都能找到了

五、服务器启动程序,开放端口

1、启动服务

我的程序是使用fastapi+ uvicorn封装的服务,因此,安装完成程序后,启动服务代码如下:

uvicorn app.main:app --host 0.0.0.0  --reload
  • 使用 Uvicorn 启动一个 ASGI 应用程序。app.main:app这是指定要运行的 ASGI 应用程序的路径和名称,

  • 项目目录结构如下:

    project/app/main.py
    

--host 0.0.0.0 ,这是一个特殊的 IP 地址,表示服务器会监听所有可用的网络接口。这意味着你的应用程序可以通过网络从任何地方访问;

--reload 是一个开发模式选项,表示启用自动重载功能。

2、验证服务

在命令行下:

curl  http://10.xxx.xx.xxx:8000 // 我的服务器ip和端口号

在这里插入图片描述

curl用于从服务器传输数据或向服务器传输数据,发起一个 HTTP GET 请求,并将服务器返回的内容输出到终端。

3、外网访问 - 开启端口号

在本机电脑浏览器下,输入我的ip和端口号,无法显示网页,但是在服务器中用curl可以执行,分析结果为:防火墙和端口号未开启

解决方法:

(1)检查已开启的端口号:firewall-cmd --list-portsnetstat -ntlp 检查所有开启的端口号

在这里插入图片描述

(2)检查某个具体的端口号是否开启:

firewall-cmd --query-port=8000/tcp // 检查8000端口号是否开启

无:返回no; 已开启,返回yes;

(3)开启某个端口号:

firewall-cmd --add-port=8000/tcp --permanent

(4)重启防火墙

firewall-cmd --reload

(5)重新验证

在这里插入图片描述

如图,一定要重新重启防火墙后,开启的端口号才会是生效。

至此,Linux服务器安装conda、安装GDAL、安装其余包、启动服务、开放端口的步骤,结束!!!!

在这里插入图片描述

开启你的程序吧!!!!!!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词