kesalahan otentikasi mapnik gis saat boot

Saya menggunakan tilelite untuk menyajikan peta. Saya memerlukannya untuk dijalankan pada saat server dimulai. Saya telah membuat skrip yang menjalankan perintah berikut saat startup:
/usr/local/bin/liteserv.py /home/Uname/bin/mapnik/my_osm.xml --caching --debug=False
proses gagal dengan:
FATAL: Otentikasi identitas gagal untuk pengguna "nama_pengguna" (ditemukan saat penguraian lapisan 'waktu luang')
Menurut halaman ini:

http://wiki.openstreetmap.org/wiki/Mapnik#Authentication_failed

Saya menjalankan perintah berikut:

./generate_xml.py osm.xml my_osm.xml --accept-none --dbname gis --symbols ./symbols/ --world_boundaries ./world_boundaries/

Sekarang saya mendapatkan:

RuntimeError: Kesalahan PSQL:
FATAL: Otentikasi identitas gagal untuk pengguna "root" (ditemukan saat penguraian lapisan 'waktu luang')

Saya benar-benar baru mengenal postgres, jadi bisakah seseorang memberi saya beberapa petunjuk sederhana tentang cara memperbaikinya.


person P Hemans    schedule 02.02.2011    source sumber


Jawaban (1)


Jika Anda memanggil ./generate_xml.py --help Anda akan melihat berbagai opsi. Salah satunya adalah --pengguna. Jika Anda tidak menyediakannya dan juga meneruskan --accept-none maka tidak ada pengguna tertentu yang akan ditulis ke XML Mapnik, yang berarti bahwa ketika Mapnik mencoba menyambung ke database postgres, pengguna saat ini akan digunakan. Jadi, jika Anda menjalankan skrip itu sebagai root, 'root' akan digunakan.

Jadi, Anda perlu menjalankan skrip itu sebagai pengguna unix yang bisa terhubung ke postgres, atau Anda harus kembali dan membuat ulang XML dan menyematkan nama pengguna yang bisa terhubung ke postgres. Yang terakhir ini mungkin lebih mudah. Inilah yang akan saya lakukan:

Dengan asumsi penggunaan unix normal Anda diberi nama 'heman', lakukan:

$ sudo su postgres
$ createuser heman # make superuser
$ exit
$ ./generate_xml.py osm.xml --accept-none --user heman --dbname gis --symbols ./symbols/ --world_boundaries ./world_boundaries/
$ liteserv.py osm.xml --caching --debug=False

Detail lebih lanjut tentang postgres dan cara mengaktifkan "trust" sehingga Anda dapat terhubung sebagai pengguna "postgres" di sini: http://dbsgeo.com/foss4g2010/html/troubleshooting.html#troubleshooting-postgresql-connections

person Dane Springmeyer    schedule 02.02.2011
comment
Pengguna asli yang saya gunakan (sebelum mengubah ke root) sebenarnya adalah pengguna super. pilih * dari pg_user menunjukkannya sebagai su. Saya akan mencoba hal kepercayaan pg. - person P Hemans; 02.02.2011
comment
Mengubah kepercayaan berhasil. Mungkin bukan rute teraman, tapi untuk saat ini sudah cukup baik. Terima kasih atas respon cepatnya. - person P Hemans; 02.02.2011
comment
@Dane bolehkah Anda memberikan tautan yang berfungsi untuk membantu mengaktifkan kepercayaan dengan postgreSQL? Terima kasih - person ; 03.02.2014