Ubuntu 安装 QGIS LTR 3.34

QGIS官方提供了安装指南:https://qgis.org/resources/installation-guide/#linux。大多数linux发行版将QGIS拆分为几个包:qgisqgis-pythonqgis-grassqgis-plugin-grassqgis-server,有的包最初安装时被跳过,可以在需要使用时再进行单独的安装。

我们只需在Debian或Ubuntu中安装最新稳定的QGIS(3.40.x Bratislava),而无需编辑配置文件。虽然官方在某些地方标注的 Debian ,但这也适用于 Ubuntu ,因为一个实际上是官方服务器上另一个的符号链接。

(1)安装工具

首先安装一些需要的工具,**gnupg全称为GNU Privacy Guard,是一个用于加密和签名数据的工具;software-properties-common**这个软件包提供了一些用于管理软件源的工具。在Linux系统中,软件源是软件包的存储库,系统会从这些源中下载和安装软件。

sudo apt install gnupg software-properties-common

(2)安装 QGIS 签名密钥

现在安装QGIS签名密钥,这样QGIS仓库中的QGIS软件将被信任并安装;此外,官方说明在第一句代码后提及:自apt 2.4.0版本(如Debian 12和Ubuntu 22或更高版本)以后不需要,所以根据版本情况决定是否执行此句。

sudo mkdir -m755 -p /etc/apt/keyrings  # not needed since apt version 2.4.0 like Debian 12 and Ubuntu 22 or newer
sudo wget -O /etc/apt/keyrings/qgis-archive-keyring.gpg https://download.qgis.org/downloads/qgis-archive-keyring.gpg

我在这一步遭遇了网络问题:failed: Connection timed out. failed: Network is unreachable.,尝试修改安全组规则等都没有解决,所以我是手动进入上面的网址链接下载的密钥,然后将密钥copy进了目录:/etc/apt/keyrings/

需要注意的是,官方提示在最新的版本安装时,需要进行额外的设置,但由于网络问题,我没有进行设置,最后安装的3.34.4-Prizren版本.

(3) 配置QGIS软件源

将最新稳定的QGIS(3.40.x Bratislava)的QGIS仓库(下面的代码)添加到:/etc/apt/sources.list.d/qgis.sources文件中。但是需要注意的是,新版本的Ubuntu sources发生了更改,改到了:/etc/apt/sources.list.d/ubuntu.sources路径,所以需要根据版本确定代码复制在哪。此外,QGIS官方说也可以新建qgis.sources文件放在该路径:/etc/apt/sources.list.d/qgis.sources

在下面代码的指定了软件源的类型、URI、适用的发行版代号(distributions-codename)、架构(amd64)、组件(main)以及签名密钥文件的位置(/etc/apt/keyrings/qgis-archive-keyring.gpg)。

Types: deb deb-src
URIs: https://qgis.org/debian
Suites: noble
Architectures: amd64
Components: main
Signed-By: /etc/apt/keyrings/qgis-archive-keyring.gpg

需要注意的是,上面代码中的Suites要根据Ubuntu的发行版本进行修改。可以使用lsb_release-cs将显示当前系统的发行版代号codename。在某些发行版中,需要使用代码读取 /etc/os-release 文件并设置环境变量:source /etc/os-release,再输出 Ubuntu 的代号:echo "$UBUNTU_CODENAME",将显示正确的发行版代号。例如,我的Ubuntu版本是:noble。我们可以在QGIS官网安装教程中,查看支持的版本号。

(4) 更新软件库

在终端中输入以下命令更新软件库,使系统获取到 QGIS 的软件包信息。但是因为我的网络问题,所以这里更新包失败了,因此最后安装的还是3.34版本。如果能够正常运行,那么便会在安装QGIS软件时能够获取到最新的3.40版本。

sudo apt update

(5)安装QGIS

执行以下命令安装 QGIS 以及相关包,如 qgis-plugin-grassqgis server

sudo apt install qgis qgis-plugin-grass qgis server
查看版本,验证安装
qgis --version

安装完成后,如果是具有GUI的Ubuntu,便可以直接通过图标打开QGIS;如果没有GUI,那么也可以通过python3来使用qgis或者GDAL,例如:import osgeoimport qgis来处理数据。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/961304.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot - 数据库集成05 - 集成MongoDB

Spring Boot集成MongoDB 文章目录 Spring Boot集成MongoDB一:使用前的准备1:依赖导入 & 配置2:实体类创建 二:核心 - MongoRepository三:核心 - MongoTemplate1:集合操作2:文档操作(重点)3&…

SpringCloud系列教程:微服务的未来(十八)雪崩问题、服务保护方案、Sentinel快速入门

前言 在分布式系统中,雪崩效应(Avalanche Effect)是一种常见的故障现象,通常发生在系统中某个组件出现故障时,导致其他组件级联失败,最终引发整个系统的崩溃。为了有效应对雪崩效应,服务保护方…

Golang Gin系列-7:认证和授权

在本章中,我们将探讨Gin框架中身份验证和授权的基本方面。这包括实现基本的和基于令牌的身份验证,使用基于角色的访问控制,应用中间件进行授权,以及使用HTTPS和漏洞防护保护应用程序。 实现身份认证 Basic 认证 Basic 认证是内置…

C++ 中用于控制输出格式的操纵符——setw 、setfill、setprecision、fixed

目录 四种操纵符简要介绍 setprecision基本用法 setfill的基本用法 fixed的基本用法 setw基本用法 以下是一些常见的用法和示例: 1. 设置字段宽度和填充字符 2. 设置字段宽度和对齐方式 3. 设置字段宽度和精度 4. 设置字段宽度和填充字符,结合…

06_改善播放效果--优先级与阻塞

一、声明 本文章的程序是基于05篇的程序改善的,所以CubeMx的配置看05篇的就好 且此篇文章由于红外遥控暂时未使用,还不知其是否能成功显示现象 二、keil5代码 这个优先级要1,但是如果只是这个优先级1的话,那么我的LED灯闪烁的任务…

【Rust自学】16.3. 共享状态的并发

喜欢的话别忘了点赞、收藏加关注哦(加关注即可阅读全文),对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 16.3.1. 使用共享来实现并发 还记得Go语言有一句名言是这么说的:Do not commun…

项目集成Nacos

文章目录 1.环境搭建1.创建模块 sunrays-common-cloud-nacos-starter2.目录结构3.pom.xml4.自动配置1.NacosAutoConfiguration.java2.spring.factories 5.引入cloud模块通用依赖 2.测试1.创建模块 sunrays-common-cloud-nacos-starter-demo2.目录结构3.pom.xml4.application.ym…

计算机网络 (59)无线个人区域网WPAN

前言 无线个人区域网(WPAN,Wireless Personal Area Network)是一种以个人为中心,采用无线连接方式的个人局域网。 一、定义与特点 定义:WPAN是以个人为中心,实现活动半径小、业务类型丰富、面向特定群体的无…

Python 之 Excel 表格常用操作

示例文件 test.xlsx 将各个表单拆分成单独的 Excel 文件 import os.pathimport openpyxl import pandasdef handle_excel(file_path):dirname os.path.dirname(file_path)basename os.path.basename(file_path).split(".")[0]wb openpyxl.load_workbook(file_pat…

01学习预热篇(D6_正式踏入JVM深入学习前的铺垫)

目录 学习前言 一、虚拟机的结构 1. Java虚拟机参数设置 2. java 堆 3. 出入栈 4. 局部变量表 1> 局部变量的剖析 2> 局部变量的回收 5. 操作数栈 1> 常量入栈指令 2> 局部变量值转载到栈中指令 3> 将栈顶值保存到局部变量中指令 6. 帧数据区 7. 栈…

知识库建设对提升团队协作与创新能力的影响分析

内容概要 在当今快速变革的商业环境中,知识库建设的重要性愈发凸显。它不仅是信息存储的载体,更是推动组织内部沟通与协作的基石。通过系统整理与管理企业知识,团队成员能够便捷地访问相关信息,使得协作过程更为流畅,…

C语言字符串详解

1. C语言中的字符串基础 C语言中的字符串是程序设计中不可忽视的部分。与现代高级编程语言不同,C语言对字符串的处理方式直接、灵活,并且强大。在C语言中,字符串并不是一种特殊的数据类型,而是字符数组的一种表现形式。字符串通常…

神经网络的通俗介绍

人工神经网络,是一种模仿人类大脑工作原理的数学模型。人类的大脑是由无数的小“工作站”组成的,每个工作站叫做“神经元”。这些神经元通过“电线”互相连接,负责接收、处理和传递信息。 一、人类大脑神经网络 人类大脑的神经网络大概长这…

SpringBoot中Excel表的导入、导出功能的实现

文章目录 一、easyExcel简介二、Excel表的导出2.1 添加 Maven 依赖2.2 创建导出数据的实体类4. 编写导出接口5. 前端代码6. 实现效果 三、excel表的导出1. Excel表导入的整体流程1.1 配置文件存储路径 2. 前端实现2.1 文件上传组件 2.2 文件上传逻辑3. 后端实现3.1 文件上传接口…

vim交换文件的工作原理

在vim中,交换文件是一个临时文件,当我们使用vim打开一个文件进行编辑(一定得是做出了修改才会产生交换文件)时候,vim就会自动创建一个交换文件,而之后我们对于文件的一系列修改都是在交换文件中进行的&…

C++/stack_queue

目录 1.stack 1.1stack的介绍 1.2stack的使用 练习题: 1.3stack的模拟实现 2.queue的介绍和使用 2.1queue的介绍 2.2queue的使用 2.3queue的模拟实现 3.priority_queue的介绍和使用 3.1priority_queue的介绍 3.2priority_queue的使用 欢迎 1.stack 1.1stack…

5分钟带你获取deepseek api并搭建简易问答应用

目录 1、获取api 2、获取base_url和chat_model 3、配置模型参数 方法一:终端中临时将加入 方法二:创建.env文件 4、 配置client 5、利用deepseek大模型实现简易问答 deepseek-v3是截止博文撰写之日,无论是国内还是国际上发布的大模型中…

机器学习day4

自定义数据集 使用pytorch框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测 import numpy as np import torch import torch.nn as nn import torch.optim as optimizer import matplotlib.pyplot as pltclass1_points np.array([[2.1, 1.8],[1.9, 2…

58.界面参数传递给Command C#例子 WPF例子

界面参数的传递,界面参数是如何从前台传送到后台的。 param 参数是从界面传递到命令的。这个过程通常涉及以下几个步骤: 数据绑定:界面元素(如按钮)的 Command 属性绑定到视图模型中的 RelayCommand 实例。同时&#x…

Julius AI 人工智能数据分析工具介绍

Julius AI 是一款由 Casera Labs 开发的人工智能数据分析工具,旨在通过自然语言交互和强大的算法能力,帮助用户快速分析和可视化复杂数据。这款工具特别适合没有数据科学背景的用户,使数据分析变得简单高效。 核心功能 自然语言交互&#x…