Совместно с Романом Смирновым собрали локальный сервер OpenStreetMap.
1. Ставим Ubuntu 12.10-server-x64, при инсталляции устанавливаем OpenSSH server, LAMP server, PostgreSQL server
2. Обновляем систему
$ sudo apt-get update
$ sudo apt-get upgrade
3. Устанавливаем необходимые пакеты
$ sudo apt-get install accountsservice acpid adduser apache2 apache2-mpm-prefork apache2-threaded-dev apache2-utils apache2.2-bin apache2.2-common apparmor apport apport-symptoms apt apt-transport-https apt-utils apt-xapian-index aptitude aptitude-common at autoconf automake autotools-dev base-files base-passwd bash bash-completion bc bind9-host binutils biosdevname bsdmainutils bsdutils build-essential busybox-initramfs busybox-static byobu bzip2 ca-certificates comerr-dev command-not-found command-not-found-data console-setup consolekit coreutils cpio cpp cpp-4.7 crda cron curl dash dbus dconf-gsettings-backend:amd64 dconf-service debconf debconf-i18n debianutils diffutils dmidecode dmsetup dnsutils dosfstools dpkg dpkg-dev e2fslibs:amd64 e2fsprogs ed eject ethtool fakeroot file findutils fontconfig fontconfig-config fonts-ubuntu-font-family-console friendly-recovery ftp fuse g++ g++-4.7 gawk gcc gcc-4.7 gcc-4.7-base:amd64 gccxml geoip-bin geoip-database gettext-base gir1.2-geocodeglib-1.0 gir1.2-glib-2.0 gir1.2-json-1.0 gir1.2-soup-2.4 git git-core git-man glib-networking:amd64 glib-networking-common glib-networking-services gnupg gpgv grep groff-base grub-common grub-gfxpayload-lists grub-pc grub-pc-bin grub2-common gsettings-desktop-schemas gzip hdf5-helpers hdparm hicolor-icon-theme hostname ifupdown info initramfs-tools initramfs-tools-bin initscripts insserv install-info installation-report iproute iptables iputils-ping iputils-tracepath irqbalance isc-dhcp-client isc-dhcp-common iso-codes kbd keyboard-configuration klibc-utils krb5-locales krb5-multidev landscape-common language-pack-en language-pack-en-base language-selector-common laptop-detect less libaccountsservice0 libacl1:amd64 libagg-dev libaio1:amd64 libalgorithm-c3-perl libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libapache2-mod-php5 libapr1 libapr1-dev libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-dev libaprutil1-ldap libapt-inst1.5:amd64 libapt-pkg4.12:amd64 libarchive-zip-perl libarmadillo3 libasn1-8-heimdal:amd64 libasprintf0c2:amd64 libatk1.0-0:amd64 libatk1.0-data libattr1:amd64 libavahi-client3:amd64 libavahi-common-data:amd64 libavahi-common3:amd64 libb-hooks-endofscope-perl libbind9-80 libblas3 libblkid1:amd64 libboost-all-dev libboost-chrono-dev libboost-chrono1.49-dev libboost-chrono1.49.0 libboost-date-time-dev libboost-date-time1.49-dev libboost-date-time1.49.0 libboost-dev libboost-filesystem-dev libboost-filesystem1.49-dev libboost-filesystem1.49.0 libboost-graph-dev libboost-graph-parallel-dev libboost-graph-parallel1.49-dev libboost-graph-parallel1.49.0 libboost-graph1.49-dev libboost-graph1.49.0 libboost-iostreams-dev libboost-iostreams1.49-dev libboost-iostreams1.49.0 libboost-locale-dev libboost-locale1.49-dev libboost-locale1.49.0 libboost-math-dev libboost-math1.49-dev libboost-math1.49.0 libboost-mpi-dev libboost-mpi-python-dev libboost-mpi-python1.49-dev libboost-mpi-python1.49.0 libboost-mpi1.49-dev libboost-mpi1.49.0 libboost-program-options-dev libboost-program-options1.49-dev libboost-program-options1.49.0 libboost-python-dev libboost-python1.49-dev libboost-python1.49.0 libboost-random-dev libboost-random1.49-dev libboost-random1.49.0 libboost-regex-dev libboost-regex1.49-dev libboost-regex1.49.0 libboost-serialization-dev libboost-serialization1.49-dev libboost-serialization1.49.0 libboost-signals-dev libboost-signals1.49-dev libboost-signals1.49.0 libboost-system-dev libboost-system1.49-dev libboost-system1.49.0 libboost-test-dev libboost-test1.49-dev libboost-test1.49.0 libboost-thread-dev libboost-thread1.49-dev libboost-thread1.49.0 libboost-timer-dev libboost-timer1.49-dev libboost-timer1.49.0 libboost-wave-dev libboost-wave1.49-dev libboost-wave1.49.0 libboost1.49-dev libbsd0:amd64 libbz2-1.0:amd64 libbz2-dev:amd64 libc-bin libc-dev-bin libc6:amd64 libc6-dev:amd64 libcairo-gobject2:amd64 libcairo-script-interpreter2:amd64 libcairo2:amd64 libcairo2-dev libcairomm-1.0-1:amd64 libcairomm-1.0-dev:amd64 libcap-ng0 libcap2:amd64 libcf0 libcgi-fast-perl libcheck-isa-perl libck-connector0:amd64 libclass-accessor-perl libclass-c3-perl libclass-c3-xs-perl libclass-data-inheritable-perl libclass-isa-perl libclass-load-perl libclass-load-xs-perl libclass-trigger-perl libcomerr2:amd64 libcommon-sense-perl libcups2:amd64 libcurl3:amd64 libcurl3-gnutls:amd64 libcurl4-gnutls-dev libcwidget3 libdap-dev:amd64 libdap11:amd64 libdapclient3:amd64 libdapserver7:amd64 libdata-alias-perl libdata-optlist-perl libdata-visitor-perl libdate-manip-perl libdatrie1:amd64 libdb5.1:amd64 libdbd-mysql-perl libdbi-perl libdbi1 libdbus-1-3:amd64 libdbus-1-dev libdbus-glib-1-2:amd64 libdbus-glib-1-dev libdconf1:amd64 libdevel-globaldestruction-perl libdevel-partialdump-perl libdevmapper-event1.02.1:amd64 libdevmapper1.02.1:amd64 libdns81 libdpkg-perl libdrm-intel1:amd64 libdrm-nouveau1a:amd64 libdrm-nouveau2:amd64 libdrm-radeon1:amd64 libdrm2:amd64 libedit2:amd64 libelf1:amd64 libencode-locale-perl libepsilon0 libept1.4.12 liberror-perl libeval-closure-perl libevent-2.0-5:amd64 libexpat1:amd64 libexpat1-dev libfcgi-perl libffi6:amd64 libfile-copy-recursive-perl libfile-fcntllock-perl libfile-listing-perl libfont-afm-perl libfontconfig1:amd64 libfontconfig1-dev libfreetype6:amd64 libfreetype6-dev libfreexl1:amd64 libfribidi0:amd64 libfuse2:amd64 libgc1c2 libgcc1:amd64 libgcrypt11:amd64 libgcrypt11-dev libgdal-dev libgdal1 libgdbm3:amd64 libgdk-pixbuf2.0-0:amd64 libgdk-pixbuf2.0-common libgeo-coder-googlev3-perl libgeo-coordinates-itm-perl libgeo-coordinates-utm-perl libgeo-distance-perl libgeo-distance-xs-perl libgeo-google-mapobject-perl libgeo-googleearth-pluggable-perl libgeo-helmerttransform-perl libgeo-ip-perl libgeo-ipfree-perl libgeo-metar-perl libgeo-osm-tiles-perl libgeo-point-perl libgeo-postcode-perl libgeo-proj4-perl libgeoclue-dev libgeoclue0 libgeocode-glib-dbg libgeocode-glib-dev libgeocode-glib-doc libgeocode-glib0 libgeographiclib-dev libgeographiclib9 libgeography-countries-perl libgeography-nationalgrid-perl libgeoip-dev libgeoip1:amd64 libgeometry-primitive-perl libgeomview-1.9.4 libgeomview-dev libgeos++-dev libgeos-3.3.3 libgeos-c1 libgeos-dbg libgeos-dev libgeos-doc libgeos-ruby1.8 libgeotiff-dev libgeotiff-epsg libgeotiff2 libgeotranz3-dev libgeotranz3.1 libgfortran3:amd64 libgif-dev libgif4:amd64 libgirepository-1.0-1 libgl1-mesa-dri:amd64 libgl1-mesa-glx:amd64 libglapi-mesa:amd64 libglib2.0-0:amd64 libglib2.0-bin libglib2.0-data libglib2.0-dev libglu1-mesa:amd64 libgmp10:amd64 libgnome-keyring-common libgnome-keyring0:amd64 libgnutls-dev libgnutls-openssl27:amd64 libgnutls26:amd64 libgnutlsxx27:amd64 libgomp1:amd64 libgpg-error-dev libgpg-error0:amd64 libgpm2:amd64 libgssapi-krb5-2:amd64 libgssapi3-heimdal:amd64 libgssrpc4:amd64 libgtk2.0-0:amd64 libgtk2.0-bin libgtk2.0-common libhcrypto4-heimdal:amd64 libhdf4-0-alt libhdf4-alt-dev libhdf5-7 libhdf5-dev libhdf5-serial-dev libheimbase1-heimdal:amd64 libheimntlm0-heimdal:amd64 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-template-perl libhtml-template-pluggable-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhx509-5-heimdal:amd64 libibverbs-dev libibverbs1 libice-dev:amd64 libice6:amd64 libicu-dev libicu48:amd64 libidn11:amd64 libidn11-dev libio-multiplex-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-string-perl libio-stringy-perl libisc83 libisccc80 libisccfg82 libitm1:amd64 libiw30:amd64 libjasper-dev libjasper1:amd64 libjbig-dev:amd64 libjbig0:amd64 libjpeg-dev libjpeg-turbo8:amd64 libjpeg-turbo8-dev:amd64 libjpeg8:amd64 libjpeg8-dev:amd64 libjs-jquery libjson-any-perl libjson-glib-1.0-0:amd64 libjson-perl libjson-xs-perl libk5crypto3:amd64 libkadm5clnt-mit8:amd64 libkadm5srv-mit8:amd64 libkdb5-6:amd64 libkeyutils1:amd64 libklibc libkms1:amd64 libkrb5-26-heimdal:amd64 libkrb5-3:amd64 libkrb5-dev libkrb5support0:amd64 liblapack3 liblcms2-2:amd64 libldap-2.4-2:amd64 libldap2-dev:amd64 liblist-moreutils-perl libllvm3.1:amd64 liblocale-gettext-perl liblockfile-bin liblockfile1:amd64 liblog-log4perl-perl libltdl-dev:amd64 libltdl7:amd64 liblwp-mediatypes-perl liblwp-protocol-https-perl liblwres80 liblzma-dev:amd64 liblzma5:amd64 libmagic1:amd64 libmailtools-perl libmath-polygon-perl libmethod-autoload-perl libmodule-implementation-perl libmodule-runtime-perl libmoose-perl libmoosex-clone-perl libmoosex-storage-perl libmount1:amd64 libmpc2:amd64 libmpfr4:amd64 libmro-compat-perl libmysqlclient-dev libmysqlclient18:amd64 libnamespace-clean-perl libncurses5:amd64 libncursesw5:amd64 libneon27-gnutls libnet-cidr-perl libnet-daemon-perl libnet-http-perl libnet-server-perl libnet-snmp-perl libnet-ssleay-perl libnetcdf-dev libnetcdfc++4 libnetcdfc7 libnetcdff5 libnewt0.52 libnfnetlink0 libnih-dbus1:amd64 libnih1:amd64 libnl-3-200:amd64 libnl-genl-3-200:amd64 libnuma1 libnumber-format-perl libodbc1:amd64 libogdi3.2 libopenmpi-dev libopenmpi1.3 libossp-uuid16 libp11-kit-dev libp11-kit0:amd64 libpackage-deprecationmanager-perl libpackage-new-perl libpackage-stash-perl libpackage-stash-xs-perl libpam-ck-connector:amd64 libpam-modules:amd64 libpam-modules-bin libpam-runtime libpam0g:amd64 libpango1.0-0:amd64 libparams-classify-perl libparams-util-perl libparse-debianchangelog-perl libparted0debian1:amd64 libpcap0.8:amd64 libpci3:amd64 libpciaccess0:amd64 libpcre3:amd64 libpcre3-dev libpcrecpp0:amd64 libpcsclite1:amd64 libpipeline1:amd64 libpixman-1-0:amd64 libpixman-1-dev libplrpc-perl libplymouth2 libpng12-0:amd64 libpng12-dev libpolkit-agent-1-0:amd64 libpolkit-backend-1-0:amd64 libpolkit-gobject-1-0:amd64 libpoppler28:amd64 libpopt0:amd64 libpq-dev libpq5 libprocps0:amd64 libproj-dev libproj0 libprotobuf-c0 libprotobuf-c0-dev libprotobuf7 libprotoc7 libproxy1:amd64 libpthread-stubs0:amd64 libpthread-stubs0-dev:amd64 libpython2.7 libquadmath0:amd64 librasterlite-dev:amd64 librasterlite1:amd64 libreadline5:amd64 libreadline6:amd64 libregexp-common-perl libroken18-heimdal:amd64 librrd4 librrds-perl librtmp-dev librtmp0:amd64 libruby1.8 libsasl2-2:amd64 libsasl2-modules:amd64 libselinux1:amd64 libserf1:amd64 libsigc++-2.0-0c2a:amd64 libsigc++-2.0-dev:amd64 libsigsegv2 libslang2:amd64 libsm-dev:amd64 libsm6:amd64 libsocket6-perl libsoup-gnome2.4-1:amd64 libsoup2.4-1:amd64 libspatialite-dev libspatialite3 libsqlite3-0:amd64 libsqlite3-dev libss2:amd64 libssl-dev libssl-doc libssl1.0.0:amd64 libstdc++6:amd64 libstdc++6-4.7-dev libstring-rewriteprefix-perl libsub-exporter-perl libsub-identify-perl libsub-install-perl libsub-name-perl libsvn1:amd64 libswitch-perl libtask-weaken-perl libtasn1-3:amd64 libtasn1-3-dev libterm-readkey-perl libtest-number-delta-perl libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libthai-data libthai0:amd64 libtie-toobject-perl libtiff4:amd64 libtiff5:amd64 libtiff5-dev libtiffxx0c2:amd64 libtiffxx5:amd64 libtimedate-perl libtinfo5:amd64 libtool libtorque2 libtry-tiny-perl libtxc-dxtn-s2tc0:amd64 libudev0:amd64 libuniversal-require-perl liburi-perl libusb-0.1-4:amd64 libusb-1.0-0:amd64 libuuid1:amd64 libvariable-magic-perl libwhoopsie0 libwind0-heimdal:amd64 libwrap0:amd64 libwww-perl libwww-robotrules-perl libx11-6:amd64 libx11-data libx11-dev:amd64 libx11-doc libx11-xcb1:amd64 libxapian22 libxau-dev:amd64 libxau6:amd64 libxcb-glx0:amd64 libxcb-render0:amd64 libxcb-render0-dev:amd64 libxcb-shm0:amd64 libxcb-shm0-dev:amd64 libxcb1:amd64 libxcb1-dev:amd64 libxcomposite1:amd64 libxcursor1:amd64 libxdamage1:amd64 libxdmcp-dev:amd64 libxdmcp6:amd64 libxerces-c2-dev libxerces-c28 libxext6:amd64 libxfixes3:amd64 libxft2:amd64 libxi6:amd64 libxinerama1:amd64 libxml-libxml-lazybuilder-perl libxml-libxml-perl libxml-namespacesupport-perl libxml-parser-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl libxml2:amd64 libxml2-dev:amd64 libxmuu1:amd64 libxrandr2:amd64 libxrender-dev:amd64 libxrender1:amd64 libxslt1.1:amd64 libxxf86vm1:amd64 libyaml-perl libyaml-syck-perl linux-firmware linux-generic linux-headers-3.5.0-17 linux-headers-3.5.0-17-generic linux-headers-generic linux-image-3.5.0-17-generic linux-image-extra-3.5.0-17-generic linux-image-generic linux-libc-dev:amd64 locales lockfile-progs login logrotate lsb-base lsb-release lshw lsof ltrace lvm2 m4 make makedev man-db manpages manpages-dev mawk mc mc-data memtest86+ mime-support mlocate module-init-tools mount mountall mpi-default-dev mtr-tiny multiarch-support munin munin-common munin-doc munin-node munin-plugins-core munin-plugins-extra mysql-client-5.5 mysql-client-core-5.5 mysql-common mysql-server mysql-server-5.5 mysql-server-core-5.5 nano ncurses-base ncurses-bin ncurses-term net-tools netbase netcat-openbsd ntfs-3g ntpdate odbcinst odbcinst1debian2:amd64 openmpi-common openssh-client openssh-server openssl os-prober parted passwd patch pciutils perl perl-base perl-modules php5-cli php5-common php5-mysql pkg-config plymouth plymouth-theme-ubuntu-text policykit-1 popularity-contest postgis postgresql postgresql-9.1 postgresql-9.1-postgis postgresql-client postgresql-client-9.1 postgresql-client-common postgresql-common postgresql-contrib postgresql-contrib-9.1 postgresql-doc postgresql-doc-9.1 postgresql-server-dev-9.1 powermgmt-base ppp pppconfig pppoeconf procps proj-bin proj-data protobuf-c-compiler psmisc python python-apt python-apt-common python-cairo python-cairo-dbg python-cairo-dev python-cairosvg python-chardet python-dbg python-debian python-dev python-gdbm python-gnupginterface python-minimal python-newt python-openssl python-pam python-pkg-resources python-serial python-six python-twisted-bin python-twisted-core python-xapian python-zope.interface python2.7 python2.7-dbg python2.7-dev python2.7-minimal python3 python3-apport python3-apt python3-dbus python3-distupgrade python3-gdbm python3-gi python3-minimal python3-problem-report python3-update-manager python3.2 python3.2-minimal rasterlite-bin rasterlite-dbg readline-common resolvconf rrdtool rsync rsyslog screen sed sensible-utils sgml-base shared-mime-info ssh-import-id ssl-cert strace subversion sudo sysv-rc sysvinit-utils tar tasksel tasksel-data tcpd tcpdump telnet time tmux ttf-dejavu ttf-dejavu-core ttf-dejavu-extra tzdata ubuntu-keyring ubuntu-minimal ubuntu-release-upgrader-core ubuntu-standard ucf udev ufw unixodbc unixodbc-dev unzip update-manager-core update-notifier-common upstart ureadahead usbutils util-linux uuid-dev uuid-runtime vim vim-common vim-runtime vim-tiny w3m watershed wget whiptail whoopsie wireless-regdb wireless-tools wpasupplicant x11-common x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-render-dev xauth xkb-data xml-core xorg-sgml-doctools xtrans-dev xz-utils zlib1g:amd64 zlib1g-dev:amd64
4. Ребутимся
$ sudo reboot
5. Создаем пользователя и базу
$ sudo -u postgres -i
$ createuser osm
Shall the new role be a superuser? (y/n) y
$ createdb -E UTF8 -O osm gis
$ exit
6. Устанавливаем PostGIS на базу
$ sudo -u postgres -i
$ psql -f /usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql -d gis
$ psql -d gis -c "ALTER TABLE geometry_columns OWNER TO osm; ALTER TABLE spatial_ref_sys OWNER TO osm;"
$ psql -d gis -c "ALTER USER osm WITH PASSWORD 'osm';"
$ exit
7. Устанавливаем osm2pgsql
$ mkdir ~/src
$ cd ~/src
$ git clone https://github.com/openstreetmap/osm2pgsql
$ cd osm2pgsql
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
8. Загружаем проекцию 900913 (Google, поперечная меркатора на сфере) в PostGIS
$ sudo -u postgres -i
$ psql -f /usr/local/share/osm2pgsql/900913.sql -d gis
$ exit
9. Скачиваем mapnik
$ cd ~/src
$ git clone git://github.com/mapnik/mapnik
$ cd mapnik
$ git branch 2.0 origin/2.0.x
$ git checkout 2.0
10. Собираем и инсталлируем mapnik
$ python scons/scons.py configure INPUT_PLUGINS=all OPTIMIZATION=3 SYSTEM_FONTS=/usr/share/fonts/truetype/
$ python scons/scons.py
$ sudo python scons/scons.py install
$ sudo ldconfig
11. Скачиваем mapnik-style
$ cd ~/src
$ svn co http://svn.openstreetmap.org/applications/rendering/mapnik mapnik-style
$ cd mapnik-style
12. Скачиваем границы
$ sudo ./get-coastlines.sh /usr/local/share
13. Генерируем xml
$ cd ~/src/mapnik-style
$ ./generate_xml.py --host localhost --user 'osm' --dbname gis --symbols ./symbols/ --world_boundaries /usr/local/share/world_boundaries/ --port 5432 --password 'osm'
15. Скачиваем, компилируем, инсталлируем mod_tile
$ cd ~/src
$ git clone git://github.com/openstreetmap/mod_tile.git
$ cd mod_tile
Последняя версия (на 2013-04-06) mod_tile собираться не захотела, ревизия c6b3c43460c0d9b427c91a264f2b334973b6760f собралась
$ git checkout c6b3c43460c0d9b427c91a264f2b334973b6760f
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
$ sudo make install-mod_tile
$ sudo ldconfig
16. Редактируем renderd.conf
$ sudo vi /usr/local/etc/renderd.conf
Меняем
socketname=/var/run/renderd/renderd.sock
plugins_dir=/usr/local/lib/mapnik/input
font_dir=/usr/share/fonts/truetype/ttf-dejavu
XML=/home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/src/mapnik-style/osm.xml
HOST=localhost
За расположение тайлов отвечает tile_dir
17. Создание директорий
для хранения /var/run/renderd/renderd.sock
$ sudo mkdir /var/run/renderd
$ sudo chown USER_NAME /var/run/renderd
для хренения тайлов
$ sudo mkdir /var/lib/mod_tile
$ sudo chown USER_NAME /var/lib/mod_tile
18. Подключаем mod_tile к Apache
$ sudo vi /etc/apache2/conf.d/mod_tile
LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so
19. Настраиваем renderd в Apache
$ sudo vi /etc/apache2/sites-available/default
Перед DocumentRoot вставить
LoadTileConfigFile /usr/local/etc/renderd.conf
ModTileRenderdSocketName /var/run/renderd/renderd.sock
# Timeout before giving up for a tile to be rendered
ModTileRequestTimeout 0
# Timeout before giving up for a tile to be rendered that is otherwise missing
ModTileMissingRequestTimeout 30
20. Скачиваем данные osm
$ cd ~/src
$ mkdir msk
$ cd msk
$ wget http://data.gis-lab.info/osm_dump/dump/latest/RU-MOW.osm.pbf
21. Настраиваем PostgreSQL для импорта
$ sudo vi /etc/postgresql/9.1/main/postgresql.conf
shared_buffers = 128MB
checkpoint_segments = 20
maintenance_work_mem = 256MB
autovacuum = off
$ sudo sysctl -w kernel.shmmax=268435456
$ sudo sysctl -p /etc/sysctl.conf
$ sudo service postgresql restart
22. Импортируем данные osm
$ sudo -u postgres -i
$ osm2pgsql -d gis --number-processes 16 --slim -C 12000 --cache-strategy dense /home/USER_NAME/src/msk/RU-MOW.osm.pbf
$ exit
23. Проверка
В одной сессии запускаем
$ sudo renderd -f -c /usr/local/etc/renderd.conf
В другой рестартим Apache
$ sudo /etc/init.d/apache2 restart
Смотрим отдается ли тайл
http://адрес/osm_tiles/0/0/0.png
24. Возвращаем первоначальные настройки PostgreSQL
25. Даем права пользователю www-data на папку /var/lib/mod_tile
26. Делаем автозапуск renderd
$ sudo cp ~/src/mod_tile/debian/renderd.init /etc/init.d/renderd
$ sudo chmod u+x /etc/init.d/renderd
$ sudo vi /etc/init.d/renderd
Исправляем в этом скрипте
DAEMON=/usr/local/bin/$NAME
DAEMON_ARGS="-c /usr/local/etc/renderd.conf"
$ sudo ln -s /etc/init.d/renderd /etc/rc2.d/S20renderd
Возможные ошибки
1) [renderd] std::runtime_error: locale::facet::_S_create_c_locale name not valid
не хватает export LC_ALL="C"
Импорт planet-latest.osm.bz2 занял 6 дней на в виртуалке vmware с 8 ядрами и 40 Гб памяти. Все заняло на диске 400 Гб без учета кеша тайлов.
Подписаться на:
Комментарии к сообщению (Atom)
Мой список блогов
-
-
Notes on LLMapгод назад
-
Строительноегод назад
-
Будем честными ...год назад
-
Highscalability is Up For Sale2 года назад
-
-
-
-
-
Go Composition vs Inheritance6 лет назад
-
Welcome, Prashanth!6 лет назад
-
Top Developer Collaboration Tools6 лет назад
-
Транспортный микс7 лет назад
-
-
Исповедь скрам тестера7 лет назад
-
-
Running JRuby on the Graal JIT7 лет назад
-
-
-
Скрепкус гигантус8 лет назад
-
Мои твиты8 лет назад
-
-
-
6990 рублей9 лет назад
-
-
Смирение и американские боеголовки9 лет назад
-
-
-
-
-
-
Measuring Activity Startup Time10 лет назад
-
-
-
-
-
Рассказ жителя Мариуполя из первых рук12 лет назад
-
-
Grails - Convention over Configuration12 лет назад
-
$ (dollar) prefix for angularJS12 лет назад
-
-
-
-
Блог закрыт!12 лет назад
-
-
Websphere portal. Create pages programmatically13 лет назад
-
-
-
Tweetbot для Mac13 лет назад
-
Scala-IO Core: Unmanaged Resources13 лет назад
-
Использование шрифтов в JasperReports13 лет назад
-
Аудит менеджмента качества13 лет назад
-
-
Windows 8 Camp14 лет назад
-
-
-
Переезд14 лет назад
-
CSP15 лет назад
-
-
Графоманам15 лет назад
-
ListView Multiple Selection 215 лет назад
-
-
-
UnitOfWork & IdentityMap17 лет назад
-
-
-
-
-
-
-
-
-
6 комментариев:
Здравствуйте!При данной установке будут отдаваться адреса по координатам?
тайлурл
http://сервер/{z}/{x}/{y}.png
про x, y ,z - https://developers.google.com/maps/documentation/javascript/v2/overlays?hl=ru#Google_Maps_Coordinates
Про тайлы я понял.Но мне нужно, чтобы сервер еще отдавал названия улиц и номера домов, в формате xml, или в каком то похожем.
геокодирования и обратного геокодирования здесь нет, только тайлсервер
А реально ли использовать эту базу для геокодирования?
Конечно. http://wiki.openstreetmap.org/wiki/Nominatim - проект поисковика на базе данных osm
Отправить комментарий