O serviço systemd do PostgreSQL é / bin / true

3

postgresql.service conteúdo é

# systemd service for managing all PostgreSQL clusters on the system. This
# service is actually a systemd target, but we are using a service since
# targets cannot be reloaded.

[Unit]
Description=PostgreSQL RDBMS
[Service]
Type=oneshot
ExecStart=/bin/true
ExecReload=/bin/true
RemainAfterExit=on

[Install]
WantedBy=multi-user.target

Eu tentei iniciar o PostrgeSQL por service postgresql start e fiquei surpreso com postgresql.service contents, porque ele inicia /bin/true

uname -a output:

Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02) x86_64 GNU/Linux

Então, minhas perguntas são: WTF ?! Por que isso acontece e como consertar isso?

    
por Евгений Новиков 29.01.2018 / 08:32

2 respostas

0

Eu confirmo o problema, OS-xenial, versão Postgres - 10 (mais recente do repositório oficial). frustrante como o inferno.

Arquivo correto:

[Unit]
Description=PostgreSQL database server
Documentation=man:postgres(1)

[Service]
Type=notify
User=postgres
ExecStart=/usr/lib/postgresql/10/bin/postgres -D /var/lib/postgresql/10/main -c config_file=/etc/postgresql/10/main/postgresql.conf
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
KillSignal=SIGINT
TimeoutSec=0

[Install]
WantedBy=multi-user.target
    
por 19.08.2018 / 22:50
0

Como indicado no tópico por @termcap, postgresql@{version}-main.service é o novo nome do serviço.

Portanto, use systemctl {start|enable} [email protected] .

Sensivelmente, o postgresql.service deve conter um aviso de migração amigável, em vez de /bin/true (resolva você mesmo).

    
por 20.08.2018 / 05:42