sysvinit script de inicialização postfix - chamado apenas com argumento “status”

0

Estou tendo um problema com o postfix não inicializando na inicialização. O boot.log não mostra nenhuma informação. Iniciar o serviço postfix depois funciona como esperado.

Eu adicionei informações de depuração ao script de inicialização. As seguintes linhas foram adicionadas:

exec >> /var/log/postfix-init.log 2>&1
set -x +v
echo SERVICE START INITIATED AT: 'date +"%Y-%m-%d_%H:%M:%S"'
echo $@

Isso me deu a informação de que o script nunca foi chamado com o argumento "start". Ele só é chamado duas vezes na inicialização com o argumento "status", portanto, nunca iniciando realmente o serviço.

Meu sistema é o seguinte:

root@...:/#lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.5 LTS
Release:    12.04
Codename:   precise

Como eu já disse, iniciar o serviço com service postfix start ou invoke-rc.d postfix start funciona, mas preciso que o postfix seja iniciado no momento da inicialização.

Runlevels foram adicionados com update-rc.d postfix defaults :

# ls /etc/rc*.d/*postfix
/etc/rc0.d/K20postfix  /etc/rc2.d/S20postfix  /etc/rc4.d/S20postfix  /etc/rc6.d/K20postfix
/etc/rc1.d/K20postfix  /etc/rc3.d/S20postfix  /etc/rc5.d/S20postfix

Também tentei remover ( update-rc.d -f postfix remove ) e adicioná-lo. Estou realmente curioso porque o serviço não é chamado com o argumento "start" na inicialização. Eu estou supondo que esta é a questão aqui, mas não tenho idéia de como resolvê-lo.

Qualquer ajuda seria muito apreciada! Eu já perdi horas com isso.

EDITAR: Também adicionei ps -faxu às minhas mensagens de depuração e descobri que esse status é chamado a partir do resolvconf. Portanto, o problema é que o script de inicialização do postfix nunca é executado na inicialização.

    
por Klaus 29.08.2014 / 11:02

1 resposta

0

O problema foi um script de inicialização personalizado que foi executado antes do script de inicialização do postfix, que nunca foi finalizado.

Linhas de depuração ainda melhores, que me deram mais informações sobre o que estava acontecendo:

# remember to set shebang to bin/bash
exec > >(tee -a /var/log/postfix-init.log)
exec 2>&1
set -x +v
echo
echo SERVICE CMD INITIATED AT: 'date +"%Y-%m-%d_%H:%M:%S"'
echo $@
ps faxu

Mas o que acabou me dando a última dica foi que nenhum outro script foi executado após o script personalizado, conforme declarado no boot.log

    
por 01.09.2014 / 09:25