O processo foi morto antes do script ExecStop ser executado

1
O arquivo de unidade

systemd foi criado para controlar o início e a parada do Postgres. Ele funciona bem como esperado se o comando start ou start do systemctl for usado. Mas, se a máquina for reinicializada (systemctl reboot), durante o desligamento, o processo postgres SEMPRE é eliminado antes que o script ExecStop seja executado. No momento em que o script ExecStop é executado, o processo já foi eliminado e o script falha.

Aqui está o arquivo da unidade:

[Unit]
Description=PostgresStartStop service
Requires=network.target
After=network.target
Before=shutdown.target reboot.target halt.target kexec.target 
DefaultDependencies=no

[Service]
Type=forking
RemainAfterExit=yes
ExecStart=/etc/rc.d/init.d/postgresStartStop start
ExecStop=/etc/rc.d/init.d/postgresStartStop stop
TimeoutSec=900
StandardOutput=inherit
PIDFile=/var/lib/pgsql/data/postmaster.pid

[Install]
WantedBy=multi-user.target 

Eu tentei muitas diretivas diferentes, mas sem sucesso.

    
por Joseph Cho 26.01.2017 / 05:16

0 respostas