Как установить gdal ubuntu
PostGIS – это расширение реляционной базы данных PostgreSQL, предназначенное для работы с пространственными данными. PostGIS позволяет хранить пространственные данные с помощью типов данных geometry и geography, выполнять пространственные запросы, определять площадь, расстояние, длину и периметр, а также создавать пространственные индексы.
Данное руководство поможет установить PostGIS, настроить PostgreSQL для поддержки пространственных данных, загрузить пространственные объекты в БД и выполнить базовый запрос.
- Сервер Ubuntu 14.04 (о настройке такого сервера можно прочесть здесь).
- Пользователь с доступом к sudo.
- Предустановленная база данных PostgreSQL (руководство по установке можно найти по этой ссылке; в руководстве используется БД test1).
1: Установка PostGIS
PostGIS нет в репозитории Ubuntu. Пакеты PostGIS можно скачать с UbuntuGIS, стороннего репозитория, в котором хранятся открытые пакеты GIS. Конечно, UbuntuGIS не всегда содержит самые современные версии PostGIS, однако он хорошо поддерживается. Кроме того, благодаря этому репозиторию не придётся компилировать PostGIS из исходного кода.
В Ubuntu 14.04 добавьте нестабильную ветку репозитория UbuntuGIS:
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
ubuntugis/+archive/ubunt/ubuntugis-unstable
Press [ENTER] to continue or ctrl-c to cancel adding it
Нажмите Enter, после чего код будет добавлен:
gpg: keyring `/tmp/tmpintg192h/secring.gpg' created
gpg: keyring `/tmp/tmpintg192h/pubring.gpg' created
gpg: requesting key 314DF160 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpintg192h/trustdb.gpg: trustdb created
gpg: key 314DF160: public key "Launchpad ubuntugis-stable" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
Обновите индекс пакетов:
sudo apt-get update
sudo apt-get install postgis
Подтвердите установку, нажав Y. Команда установит PostGIS и зависимости.
2: Настройка PostgreSQL для поддержки PostGIS
Функции PostGIS нужно включать для каждой БД индивидуально.
Примечание: Для демонстрации примеров используется БД test1 и пользователь postgres из руководства по установке PostgreSQL.
Перейдите в сессию пользователя postgres.
sudo -i -u postgres
Подключитесь к БД test1:
Включите расширение PostGIS для этой БД:
CREATE EXTENSION postgis;
Убедитесь, что расширение включено:
Теперь эта БД поддерживает пространственные данные. Закройте сессию SQL и вернитесь в терминал:
Вернитесь в сессию системного пользователя.
3: Оптимизация PostgreSQL для обработки объектов GIS
PostgreSQL может работать на любой платформе, но настройки СУБД «из коробки» слишком консервативны. Объекты GIS очень большие по сравнению с текстовыми данными. Оптимизируйте PostgreSQL для поддержки данных GIS.
Отредактируйте конфигурационный файл PostgreSQL, postgresql.conf.
sudo nano /etc/postgresql/9.3/main/postgresql.conf
В строке shared_buffers нужно указать около 75% оперативной памяти. На сервере в 512MB достаточно выделить 200MB.
Найдите checkpoint_segments, раскомментируйте её и укажите значение 6:
Сохраните и закройте файл (CTRL+X, Y и Enter).
Примечание: Больше о пространственных параметрах PostgreSQL можно узнать здесь.
sudo service postgresql restart
4: Загрузка пространственных данных
Добавьте в БД пространственные данные, чтобы ознакомиться с инструментарием и процессом обработки этих данных в PostgreSQL.
Сайт Natural Earth – отличный источник таких данных.
Перейдите в домашний каталог и создайте папку nedata, в которой будут храниться данные с Natural Earth.
Перейдите в этот каталог:
Загрузите пространственные данные с сайта:
Команда загрузит сжатый файл. Распакуйте его с помощью unzip.
Примечание: Чтобы установить unzip, введите:
sudo apt-get install unzip
Чтобы распаковать файл, введите:
На сервере появится шесть файлов:
- ne_110m_admin_0_countries.README.html
- ne_110m_admin_0_countries.VERSION.txt
- ne_110m_admin_0_countries.dbf
- ne_110m_admin_0_countries.prj
- ne_110m_admin_0_countries.shp
- ne_110m_admin_0_countries.shx
Файлы .dbf, .prj, .shp и .shx составляют ShapeFile, популярный формат геопространственных данных, используемый программным обеспечением GIS. Загрузите его в БД test1.
Для этого нужно установить GDAL (библиотеку Geospatial Data Abstraction Library). При установке GDAL устанавливается OGR (OpenGIS Simple Features Reference Implementation) и команда ogr2ogr. Это библиотека для перевода векторных данных, с помощью которой можно перевести Shapefile в формат, понятный PostGIS.
sudo apt-get install gdal-bin
Вернитесь в сессию пользователя postgres.
sudo -i -u postgres
Конвертируйте Shapefile, загруженный с Natural Earth, в формат, который может прочитать PostGIS, с помощью команды ogr2ogr.
ogr2ogr -f PostgreSQL PG:dbname=test1 -progress -nlt PROMOTE_TO_MULTI /home/8host/nedata/ne_110m_admin_0_countries.shp
Рассмотрим эту команду по частям.
Примечание: Посетите сайт ogr2ogr, чтобы узнать об остальных опциях.
Вышеприведённая команда вернёт такой вывод:
0. 10. 20. 30. 40. 50. 60. 70. 80. 90. 100 - done.
Убедитесь, что данные были успешно импортированы, с помощью команды ogrinfo.
ogrinfo -so PG:dbname=test1 ne_110m_admin_0_countries
INFO: Open of `PG:dbname=test1'
using driver `PostgreSQL' successful.
Layer name: ne_110m_admin_0_countries
Geometry: Multi Polygon
Feature Count: 177
Extent: (-180.000000, -90.000000) - (180.000000, 83.645130)
Layer SRS WKT:
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563,
AUTHORITY["EPSG","7030"]],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.0174532925199433,
AUTHORITY["EPSG","9122"]],
AUTHORITY["EPSG","4326"]] FID Column = ogc_fid
Geometry Column = wkb_geometry
scalerank: Integer (4.0)
featurecla: String (30.0)
.
region_wb: String (254.0)
name_len: Real (16.6)
long_len: Real (16.6)
abbrev_len: Real (16.6)
tiny: Real (16.6)
homepart: Real (16.6)
Теперь в БД добавлены пространственные данные.
5: Запрос пространственных данных
Для примера попробуйте найти десять самых северных стран в мире. С PostGIS это очень просто.
Вернитесь в БД test1.
Команда вернёт две таблицы:
List of relations
Schema | Name | Type | Owner
-------+---------------------------+-------+----------
public | ne_110m_admin_0_countries | table | postgres
public | spatial_ref_sys | table | postgres
(2 rows)
Используйте таблицу ne_110m_admin_0_countries, которая содержит необходимые данные. Столбец admin содержит название страны, столбец wkb_gemoetry – геометрические данные. Чтобы просмотреть столбцы ne_110m_admin_0_countries, выполните команду:
На экране появятся столбцы и их типы данных. Тип данных столбца wbk_geometry имеет такой вид:
Столбец wbk_geometry содержит многоугольники. В данном примере вы имеете дело со странами и их нерегулярными границами, следовательно, каждая страна в базе не имеет одного значения широты. Таким образом, чтобы получить широту для каждой страны, сначала нужно выяснить центроид каждой страны с помощью функции ST_Centroid. Извлеките значение Y центроида с помощью функции ST_Y; это значение можно использовать как широту.
Запрос выглядит так:
SELECT admin, ST_Y(ST_Centroid(wkb_geometry)) as lattitude
FROM ne_110m_admin_0_countries
ORDER BY latitude DESC
LIMIT 10;
Результаты будут выведены в порядке убывания, так как самая северная страна будет иметь самую высокую широту.
Данный запрос выведет десять самых северных стран мира:
admin | latitude
----------+------------------
Greenland | 74.7704876939899
Norway | 69.1568563971328
Iceland | 65.074276335291
Finland | 64.5040939185674
Sweden | 62.8114849680803
Russia | 61.9808407507127
Canada | 61.4690761453491
Estonia | 58.643695240707
Latvia | 56.8071751342793
Denmark | 56.0639344617945
(10 rows)
Чтобы закрыть БД, введите:
Примечание: Больше информации о функциях PostGIS можно найти в документации расширения.
Заключение
Теперь у вас есть таблица с поддержкой пространственных данных. более подробный мануал можно найти по этой ссылке.
GeoDjango использует и предоставляет интерфейсы для следующих бесплатных геопространственных библиотек:
программа | Описание | необходимые | Поддерживаемые версии |
---|---|---|---|
GEOS | Geometry Engine с открытым исходным кодом | да | 3.8, 3.7, 3.6, 3.5 |
proj.4 | Библиотека картографических проекций | Да (только PostgreSQL и SQLite) | 6.3, 6.2, 6.1, 6.0, 5.x, 4.x |
GDAL | Библиотека | да | 3.1, 3.0, 2.4, 2.3, 2.2, 2.1, 2.0 |
GeoIP | Библиотека геолокации на основе IP | нет | 2 |
PostGIS | Пространственные расширения для PostgreSQL | Да (только PostgreSQL) | 3.0, 2.5, 2.4, 2.3, 2.2 |
SpatiaLite | Пространственные расширения для SQLite | Да (только SQLite) | 4,3 |
Обратите внимание, что более старые или новые версии этих библиотек также могут очень хорошо работать с GeoDjango. Вам решать.
Интерфейсы GeoDjango с GEOS, GDAL и GeoIP могут использоваться независимо от Django. Другими словами, необязательно иметь базу данных или файл настроек, импортируйте их как обычный модуль из django.contrib.gis .
В Debian / Ubuntu рекомендуется установить следующие пакеты, которые будут устанавливать, напрямую или через зависимости, необходимые геопространственные библиотеки:
Также ознакомьтесь с конкретными инструкциями, если вы используете macOS или Windows .
Компиляция из исходников ¶
При установке из исходного кода в системах UNIX и GNU / Linux внимательно следуйте инструкциям по установке и устанавливайте библиотеки в указанном порядке. Если вы используете MySQL или Oracle в качестве пространственной базы данных, вам понадобится только GEOS.
На платформах Linux может потребоваться ввести команду ldconfig после установки каждой библиотеки. Например :
Пользователи MacOS должны установить Xcode , чтобы иметь возможность компилировать код из исходного кода.
GEOS - это библиотека C ++ для геометрических операций и внутреннее геометрическое представление по умолчанию, используемое GeoDjango (за «отложенными» геометрическими объектами). В частности, API библиотеки C (например libgeos_c.so ) вызывается непосредственно из Python с использованием ctypes.
Сначала загрузите GEOS с сайта GEOS и распакуйте исходный архив:
Затем перейдите в каталог, в который была разархивирована GEOS, и запустите сценарий «configure», скомпилируйте и установите:
Устранение неполадок ¶
Не удается найти библиотеку GEOS ¶
Когда GeoDjango не может найти GEOS, появляется эта ошибка:
Наиболее распространенное решение - правильно настроить параметры среды библиотеки или установить GEOS_LIBRARY_PATH в своих настройках.
Если вы используете двоичный пакет GEOS (например, в Ubuntu), может быть полезно установить binutils .
GEOS_LIBRARY_PATH ¶
Если ваша библиотека GEOS находится в нестандартном месте или вы не хотите изменять путь к системным библиотекам, вы можете добавить настройку GEOS_LIBRARY_PATH в свой файл настроек Django и указать там полный путь к библиотеке GEOS. в C. Например:
Параметр должен содержать полный путь к разделяемой библиотеке на C ; другими словами, это должно быть указано libgeos_c.so , а не libgeos.so .
PROJ.4 ¶
PROJ.4 - это библиотека для преобразования геопространственных данных в различные системы координат.
Сначала загрузите исходный код PROJ.4 и связанные файлы данных («файлы смещения датума») [1] :
Затем разархивируйте архив исходного кода и извлеките дополнительные файлы данных в подкаталог nad . Это необходимо сделать перед настройкой:
Наконец, запустите «configure» и «make» и установите PROJ.4:
GDAL - отличная бесплатная геопространственная библиотека, способная читать большинство векторных и растровых форматов пространственных данных. В настоящее время GeoDjango поддерживает только функции векторных данных GDAL [2] . Перед компиляцией GDAL необходимо установить GEOS и PROJ.4 .
Сначала загрузите последнюю выпущенную версию GDAL и распакуйте архив:
Выполните операции "configure", "make" и "install":
Поскольку GeoDjango имеет свои собственные интерфейсы Python, предыдущие инструкции не компилируют привязки Python, специфичные для GDAL. Привязки можно скомпилировать, добавив опцию --with-python при запуске configure . См. GDAL / OGR в Python для получения дополнительной информации о привязках GDAL.
Если у вас возникла проблема, ознакомьтесь с предложениями и решениями в разделе устранения неполадок ниже.
Устранение неполадок ¶
Не удается найти библиотеку GDAL ¶
Если GeoDjango не может найти библиотеку GDAL, настройте параметры среды библиотеки или установите GDAL_LIBRARY_PATH в своих настройках.
GDAL_LIBRARY_PATH ¶
Если ваша библиотека GDAL находится в нестандартном месте или вы не хотите изменять путь к системным библиотекам, вы можете добавить параметр GDAL_LIBRARY_PATH в свой файл настроек Django и указать там полный путь к библиотеке GDAL. , Например :
AnyDesk – лёгкий кроссплатформенный клиент для организации удалённого доступа между устройствами на различных платформах. При запущенном хост-приложении позволяет подключаться к компьютерам, ноутбукам через браузер, чтобы полноценно управлять ими. Из публикации узнаете об особенностях AnyDesk для Линукс: преимущества, недостатки программы, используемые технологии.
О программе
АниДеск при размере 5 МБ позволяет устанавливать связь между компьютерами и гаджетами, удалённо управлять ими, наблюдать за рабочим пространством. Утилита разработана осколками команды создателей TeamViewer, поэтому объединяет в себе её функциональность, универсальность и лёгкость. Технология Erlang, используемая в области телекоммуникаций, обеспечивает стабильность соединения на протяжении многих часов. Задержки при работе через локальную сеть не превышают 16 мс.
Достижение авторов – реализация продвинутого видеокодека, написанного для оптимизации передачи пользовательских интерфейсов. Кроме достойного уровня сжатия картинки он отправляет доминантному ПК только изменяющиеся участки изображения на дисплее, экономя трафик и снижая нагрузку на «железо», интернет-канал. Работает по беспроводному интернету со скоростью 100 кбит/с.
Двухпанельный файловый менеджер упростит обмен документами и каталогами с задействованием буфера обмена, функция перетаскивания не реализована. Для общения клиентов есть голосовой и текстовый чаты. Удалённая печать поможет вывести на бумажный носитель любую информацию на служебном принтере из дома.
Интересно, что в версии Enterprise программу можно развернуть в локальной сети без доступа к интернету, подняв на новый уровень безопасность и конфиденциальность.
Поддерживаемые ОС Linux
- openSUSE 15;
- CentOS 7;
- RedHat Enterprise 7;
- Generic Linux;
- Fedore;
- Debian.
Безопасность подключения
Для подключения необходимо сообщить идентификатор компьютера (AnyDesk ID) и предоставить доступ. Этим пользуются злоумышленники, из-за чего программа запрещена рядом провайдеров по всей планете. Здесь нужно быть внимательным – не предоставлять ID и разрешения незнакомцам. В остальном приложение характеризуется беспрецедентной безопасностью. Соединение шифруется с применением TLS 1.2 (используется в банковской сфере) при помощи технологии ассиметричного обмена ключами.
Для снижения задержек и повышения конфиденциальности трафик не проходит через серверы AnyDesk.
Получить подробную информацию о коммерческих тарифах, помощь в вопросах использования и настроек можно на официальном сайте программы. Загрузить русскую версию AnyDesk для любой ОС семейства Линукс можно ниже.
Инструкция по установке
Для инсталляции приложения (на примере Ubuntu) на компьютер в терминале выполните команды:
Добавьте репозитарий AnyDesk в Ubuntu:
Обновление apt cache и непосредственно установка приложения:
sudo apt updatesudo apt install anydesk
Далее можно запускать и работать.
Для удаления приложения с компьютера выполните:
sudo apt purge anydesk
Вопросы и ответы
Откройте настройки приложения через главное меню, выберите в списке «Русский» и перезапустите AnyDesk.
Если появились проблемы в установке или работе программы на Линукс, пишите, поможем решить проблему.
У меня установлена версия Ubuntu 17.04, и я хочу установить GDAL. Я пробовал несколько способов его установки, но всегда получал ошибку. Я установил Python 2.7 и Python 3.6, но я хочу сделать установку для Python 2.7
Я попытался выполнить установку, выполнив следующие действия:
И у меня есть эта ошибка:
Если я выполню последнюю команду withs sudo: sudo pip install GDAL. У меня есть еще одна ошибка .
Как я могу установить GDAL в Ubuntu?
3 ответа
возможно, у вас будет больше вариантов, если вы загрузите пакет и прочтете readme.txt. страница загрузки
я не настолько уверен во всех этих параметрах команды самостоятельно.
надеюсь, это поможет^^
Возможно, проблема в том, что версия Ubuntu больше, чем Python. Я не нашел много информации о ubuntu 17, поэтому вам следует попробовать то, что доступно для более старых и стабильных версий.
У меня есть Ubuntu 18.04, и этот ответ , кажется, тоже помогает ей. Согласно комментариям, он также работал на Ubuntu 16.04 и 14.04:
Если у вас не установлена предыдущая версия gdal
Откройте свой terminal и введите
Если у вас установлена предыдущая версия установлена
Откройте свой terminal и введите
Похожие вопросы:
Я пытаюсь экспортировать GeoTiff с помощью Blender с помощью Blender Python API (на основе Python 3), поэтому я решил установить GDAL на Ubuntu (14.04). Что бы я хотел, так это получить модуль в.
Я пытаюсь установить GDAL-1.9.0 под Ubuntu 10.04 через buildout и, к сожалению, получаю очень странную ошибку. python setup.py build 'import site' failed; use -v for traceback Traceback (most recent.
Моя ошибка в том, что __main__.gdal_config_error: [Errno 2] No such file or directory Я получаю это при попытке установить GDAL с помощью pip и easy_install с Python2.7 на Ubuntu 12.10.
Я использовал gdal api в Windows, но теперь мне нужно использовать его в Linux (Ubuntu). Я не знаю, как установить библиотеку для c++ и как построить программу gdal с помощью g++ или другого.
Я изо всех сил пытаюсь установить GDAL на ubuntu 16.04, чтобы работать с GeoDjango (Django 2.1, python3), поэтому мне нужно понять, что я на самом деле устанавливаю. Какова роль каждого.
В настоящее время я выполняю некоторые виды моделирования распределения и картирования богатства в R на кластере linux. Для того чтобы запустить мой анализ, мне нужно установить rgdal, чтобы.
Я пытаюсь установить пакет GDAL на кластер Azure Databricks. Я никак не могу заставить его работать. Подходы, которые я пробовал, но не сработали: Через вкладку Библиотека соответствующего кластера.
Я пытаюсь установить геопанды. Для этого мне нужно установить зависимость GDAL. Я не могу ни ввести геопанды, ни установить GDAL. Окружающая среда Anaconda 4, Python 3.6 Методы, которые я пробовал.
Читайте также: