Ich hatte gerade das gleiche Problem auf Ubuntu Server 14.04. Ich habe die postgis
Erweiterung aus den offiziellen Ubuntu-Repositories mit installiert apt-get install postgis
.
Dann gab find /usr -name postgis.control
es keine Ergebnisse.
Der Grund wurde extension/postgis.control
nicht installiert, weil es keine Postgis-Skripte gab.
$ aptitude search postgis
i libpostgis-java - Geographic objects support for PostgreSQL -- JDBC support
i postgis - Geographic objects support for PostgreSQL
p postgis:i386 - Geographic objects support for PostgreSQL
i postgis-doc - Geographic objects support for PostgreSQL -- documentation
i postgresql-9.3-postgis-2.1 - Geographic objects support for PostgreSQL 9.3
p postgresql-9.3-postgis-2.1:i386 - Geographic objects support for PostgreSQL 9.3
i postgresql-9.3-postgis-2.1-scripts - PostGIS for PostgreSQL 9.3 -- scripts -- dummy package
i postgresql-9.3-postgis-scripts - Geographic objects support for PostgreSQL 9.3 -- scripts
Die Lösung ist, es zu installieren.
In debian-ähnlichen Distributionen:
apt-get install postgis*
Der aptitude Paketmanager ermittelt automatisch die richtigen zu installierenden Paketversionen. Das postgis-doc wird ebenfalls installiert.
BEARBEITEN
Wie einige Leute in Kommentaren bemerkt haben, postgis*
ist das nicht erforderlich, da es einige Pakete installiert, die nicht unbedingt erforderlich sind, um es einfach zum Laufen zu bringen.
Die erforderlichen Pakete sind postgis
und postgresql-9.x-postgis-scripts
Metapakete. Sie wählen die richtige echte Version für Ihr System. Die Befehle zum Installieren der erforderlichen Pakete lauten also
$ sudo apt-get install postgis postgresql-9.3-postgis-scripts
für postgresql-9.3
. Ubuntu 16.04
läuft postgresql-9.5
so der Befehl wird:
$ sudo apt-get install postgis postgresql-9.5-postgis-scripts
Sie können den Erfolg der Operation überprüfen, indem Sie den folgenden Befehl ausführen:
find /usr -name postgis.control
Auf meinem Server wird jetzt Folgendes zurückgegeben:
/usr/share/postgresql/9.3/extension/postgis.control
Sie können die Erweiterung jetzt für jede Datenbank auf Ihrem Postgres-Server aktivieren:
- verbinde dich mit deinem Superuser zu deiner Datenbank (standardmäßig postgres)
- Lauf
CREATE EXTENSION postgis;
Ihr öffentliches Schema enthält jetzt alle Postgis-Objekte und -Funktionen.