Я пытаюсь собрать собственный пакет PostgreSQL с некоторыми настройками конфигурации, подходящими для нашего приложения. Часть этой конфигурации включает pg_hba.conf, использующий «trust» вместо значений по умолчанию.
Я вижу, что при установке запускается скрипт установки и запускается команда initdb PostgreSQL. Это копирует примеры конфигурационных файлов и применяет к ним некоторые преобразования (замена ключевых слов) и копирует в / etc. Однако даже если я удалю ключевые слова из файла pg_hba.conf.sample и жестко закодирую нужные мне значения, они автоматически вернутся к значениям по умолчанию.
Я пытался следовать сценариям после установки, но все, что я вижу, это вызов configure_version, которого нет нигде в исходном коде PostgreSQL.
Так что же представляет собой цепочка вызовов от сценариев после установки до вызываемой программы initdb? И как я могу настроить параметры вызова initdb для моей предпочтительной формы аутентификации?
В postgresql-8.4.postinst
строка, расположенная непосредственно над вызовом configure_version
, выглядит следующим образом:
. /usr/share/postgresql-common/maintscripts-functions
, который загружает все функции из этого файла, включая configure_version
. Этот файл находится в пакете postgresql-common .