Eu tive o mesmo problema, atualizei o Ubuntu 12.04 para o 14.04. Não sei, mas também usando o systemd. Ao verificar o arquivo /etc/init.d/postgresql
, ele usa /usr/share/postgresql-common/init.d-functions
.
Este arquivo executa / usr / bin / pg_ctlcluster para iniciar e parar o servidor postgresql.
if [ "" = "stop" ] || [ "" = "restart" ]; then
ERRMSG=$(pg_ctlcluster --force "" "$name" 2>&1)
else
ERRMSG=$(pg_ctlcluster "" "$name" 2>&1)
fi
O arquivo /usr/bin/pg_ctlcluster
aceita a opção --skip-systemctl-redirect
para iniciar ou parar o postgresql sem o systectl.
Portanto, você precisa adicionar a função --skip-systemctl-redirect
in /usr/share/postgresql-common/init.d-functions
in do_ctl_all ().
Então vai ficar assim.
if [ "" = "stop" ] || [ "" = "restart" ]; then
ERRMSG=$(pg_ctlcluster --skip-systemctl-redirect --force "" "$name" 2>&1)
else
ERRMSG=$(pg_ctlcluster --skip-systemctl-redirect "" "$name" 2>&1)
fi
Ou você pode adicionar $skip_systemctl_redirect = 1;
antes de $skip_systemctl_redirect
ser verificado em /usr/bin/pg_ctlcluster
.