
Wo sind die Dateien postgresql.conf
und pg_hba.conf
auf einem Linux-Server, auf dem PostgreSQL 8.4 aus Ubuntu-Repos installiert ist?
Antwort1
Wenn Sie bei Google nach "pg_hba.conf ubuntu" suchen, erhalten Sie
https://help.ubuntu.com/community/PostgreSQL
welches den Speicherort der Dateien anzeigt.
In der Dokumentation heißt es dazu:
Die Client-Authentifizierung wird durch eine Konfigurationsdatei gesteuert, die üblicherweise pg_hba.conf heißt und im Datenverzeichnis des Datenbankclusters gespeichert ist. (HBA steht für hostbasierte Authentifizierung.) Eine Standarddatei pg_hba.conf wird installiert, wenn das Datenverzeichnis von initdb initialisiert wird. Es ist jedoch möglich, die Authentifizierungskonfigurationsdatei woanders zu platzieren; siehe den Konfigurationsparameter hba_file.
Beachten Sie, dass dort stehtgespeichert im Datenverzeichnis des Datenbankclustersund dass es möglich ist, es über einen Konfigurationsparameter woanders zu platzieren. Die offizielle Dokumentation kann Sie nicht auf einen bestimmten Ordner verweisen, da der tatsächliche Speicherort davon abhängt, wie der Betriebssystemhersteller und der Administrator des Computers PostgreSQL eingerichtet haben. Denken Sie daran, dass PostgreSQL viele verschiedene Betriebssysteme (und Linux-Distributionen) unterstützt.
AlsNeutrino zeigt, wenn Sie über psql auf Ihren Server zugreifen können, können Sie ihm sagen, dass er Ihnen den Dateispeicherort anzeigen soll.
Außerdem noch zwei Tipps:
- Mit „locate“ können Sie Dateien finden, deren Namen Sie kennen, deren Speicherort Sie jedoch nicht kennen.
- Auf Debian basierende Distributionen legen unter /usr/share/doc Dokumentationen darüber ab, wie sie standardmäßig verschiedene Pakete einrichten. Ich bin sicher, dass Sie unter /usr/share/doc/postgresql-8.4 (oder vielleicht einfach nur postgresql) Informationen zu den Konfigurationsdateien finden. Sehr hilfreich zu lesen, falls sie einige Standardverhalten geändert haben.
Antwort2
Öffnen Sie eine Eingabeaufforderung.
> psql -U postgres
=# show hba_file;
=# show config_file
Wenn Sie die Namen der Konfigurationseinstellungen ändern oder etwas anderes sehen möchten.
=# show all;
Antwort3
Möglicherweise
/etc/postgresql/9.*/main
Antwort4
Wie Vinko sagte, ist der Standort verteilungsabhängig. Um seine Antwort zu ergänzen:
Ihre Paketverwaltungssoftware teilt Ihnen mit, wo die von jedem Paket installierten Dateien sind (zum Beispiel: dpkg -L postgresql
).
Sie können auch in das Startskript des Dienstes schauen (normalerweise /etc/init.d/postgresql
)