Ao solucionar outro problema , notei que no meu sistema Ubuntu 14.04 existem dois postgresql
diretórios contendo um postgresql.conf
arquivo:
- /usr/share/postgresql
- /etc/postgresql/9.3/main/
Com a seguinte estrutura de diretórios:
$ tree -d /usr/share/postgresql
/usr/share/postgresql
├── 9.3
│ ├── extension
│ ├── man
│ │ ├── man1
│ │ └── man7
│ ├── timezonesets
│ └── tsearch_data
└── 9.4
└── man
├── man1
└── man7
... e:
$ tree -d /etc/postgresql/9.3/main/
/etc/postgresql/9.3/main/
Com os postgresql.conf
arquivos residindo nos seguintes locais:
- /usr/share/postgresql/9.3/postgresql.conf
- /etc/postgresql/9.3/main/postgresql.conf
Ao usar SHOW config_file;
, verifiquei qual arquivo de configuração meu servidor está usando:
postgres=# SHOW config_file;
config_file
------------------------------------------
/etc/postgresql/9.3/main/postgresql.conf
(1 row)
Minha pergunta é por que encontro o postgresql.conf
arquivo em dois locais e o acima é uma indicação de alguma instalação não utilizada ou outros artefatos não utilizados que devo limpar?
Os arquivos abaixo
/usr/share/postgresql/
devem ser arquivos de dados que não devem ser editados. Eles não são arquivos de configuração ao vivo.A especificação FHS em https://wiki.debian.org/FilesystemHierarchyStandard define /usr como:
Por outro lado, os arquivos abaixo
/etc/postgresql/X.Y/main
são os arquivos de configuração ao vivo para um cluster PostgreSQL nomeadomain
com a versão XY, como criado pelo comandopg_createcluster
. Cada cluster (=cada instância do postgres) tem o seu própriopostgresql.conf
que é gerado com ele, assim como as outras configurações graváveis e arquivos de dados desse cluster.Pessoalmente, no meu Ubuntu 14.04, não encontro
postgresql.conf
/usr. No entanto, existe um arquivo de modelo em/usr/share/postgresql/9.3/postgresql.conf.sample
, mas observe o.sample
sufixo.Esse arquivo pertence ao
postgresql-9.3
pacote, conforme revelado pordpkg -S
:Também é consistente com http://packages.ubuntu.com/trusty/amd64/postgresql-9.3/filelist
Você pode tentar
dpkg -S postgresql.conf
em seu sistema e verificar se/usr/share/postgresql/9.3/postgresql.conf
faz parte dos resultados e, se sim, a qual pacote pertence e qual é a origem desse pacote. Talvez, por algum motivo, seja igual ao exemplo postgresql.conf, exceto que não possui o.sample
sufixo.