Ubuntu 16.04下Nominatim 3.1.0 OSM地图搭建教程

需积分: 40 2 下载量 188 浏览量 更新于2024-08-06 收藏 5KB TXT 举报
本篇教程将指导您如何在Ubuntu 16.04操作系统上使用Nominatim 3.1.0版本搭建OSM地图服务。Nominatim是一款强大的在线地图搜索服务,它允许用户通过地址、坐标或地方名称查询OpenStreetMap的数据。以下是详细的步骤: 1. 系统环境准备: - 首先,确保您的系统已更新到最新状态,使用`sudo apt-get update`命令检查并更新软件包。 - 安装必要的软件包,包括开发工具(如`build-essential`, `cmake`, `g++`, Boost库等)、数据库相关组件(如`libpq-dev`, `postgresql-server-dev-9.5`, `postgresql-9.5-postgis-2.2`, `postgresql-contrib-9.5`),以及Apache和PHP支持(`apache2`, `php`, `php-pgsql`, `php-db`, `php-intl`)。 2. 用户账户与权限设置: - 创建一个名为`nominatim`的专用用户,使用`sudo useradd -d /srv/nominatim -m`命令,并为新用户设置bash shell。 - 设置环境变量`USERNAME`和`USERHOME`,然后给`nominatim`用户对`/srv/nominatim`目录的执行权限(`chmod a+x $USERHOME`)。 3. PostgreSQL配置: - 打开PostgreSQL配置文件`/etc/postgresql/9.5/main/postgresql.conf`,在文本编辑器(推荐图形化方式`sudo gedit`)中调整关键参数,如共享缓冲区大小(`shared_buffers`),维护工作内存(`maintenance_work_mem`),工作内存(`work_mem`),和有效缓存大小(`effective_cache_size`)以优化性能。此处建议设置较大的内存值,因为Nominatim需要处理大量数据。 4. 下载地图数据: - 使用`wget`下载测试数据,例如南极洲的最新数据包`antarctica-latest.osm.pbf`,以及全球地图数据`planet-latest.osm.pbf`。 - 这些PBF文件是OpenStreetMap的二进制压缩格式,用于存储地图数据,是Nominatim的基础数据源。 5. 安装Nominatim: - 切换到`nominatim`用户,然后按照文档中的指导安装Nominatim,这通常涉及运行`./configure`、`make`和`sudo make install`等命令。 6. 配置Nominatim: - 创建Nominatim的数据目录和索引,执行`sudo -u nominatim ./setup.pl`。这会初始化数据库和设置基础的Nominatim配置。 - 可能还需要调整Nginx或Apache的配置以指向Nominatim的接口和数据目录。 7. 启动和测试: - 启动PostgreSQL服务和Nominatim服务,然后通过浏览器访问`http://[your_server_ip]:8080/search?query=your_search_term`来测试Nominatim是否正常工作。 在整个过程中,务必严格按照Nominatim 3.1.0的官方文档进行操作,因为每个版本可能有特定的依赖和配置要求。搭建完成后,您将拥有一个可以在Ubuntu 16.04上运行的稳定、高性能的OSM地图搜索服务。