O que chama o initdb do PostgreSQL na instalação do pacote?

1

Estou tentando construir um pacote personalizado do PostgreSQL com alguns ajustes de configuração adequados para nossa aplicação. Parte dessa configuração envolve um pg_hba.conf usando "trust" em vez dos padrões.

Eu consigo ver quando instalo um script de configuração que é acionado e o comando 'initdb' do PostgreSQL é executado. Isso copia os arquivos de configuração de amostra e aplica algumas transformações a ela (substituição de palavras-chave) e copia para / etc. No entanto, mesmo se eu remover as palavras-chave do arquivo pg_hba.conf.sample e codificar os valores desejados, eles serão automaticamente revertidos para os padrões.

Eu tentei seguir os scripts de pós-instalação, mas tudo que eu posso ver é uma chamada para configure_version que não está em qualquer lugar no código-fonte do PostgreSQL.

Então, qual é a cadeia de chamadas dos scripts de pós-instalação para o programa initdb sendo chamado? E como posso ajustar os parâmetros da chamada initdb para a minha forma de autenticação preferida?

    
por stsquad 08.11.2010 / 19:24

1 resposta

3

Em postgresql-8.4.postinst , a linha imediatamente acima da chamada para configure_version é:

. /usr/share/postgresql-common/maintscripts-functions

Isso carregará todas as funções desse arquivo, que inclui configure_version . Esse arquivo é encontrado no pacote postgresql-common .

    
por Kees Cook 08.11.2010 / 20:08