Eu tenho o node.js e o pm2 instalados em um Pi (Raspbian). O PM2 foi configurado para iniciar via pm2 startup
e os scripts init que ele cria. Às vezes, quando eu reinicio, o desligamento é interrompido por alguns minutos:
A stop job is running for LSB: PM2 init script (... / 5min)
De vez em quando 1, o que eu suponho é que o PM2 não é desligado corretamente e trava por 5 minutos completos.
Neste sistema, eu sei exatamente quais aplicativos o PM2 está gerenciando e realmente não me importo se eles forem desligados corretamente.
Minha pergunta é: como reduzo o tempo limite de 5 minutos para, digamos, 15 segundos ou mais? Onde isso está configurado?
Eu li em um fórum que era a DefaultTimeoutStopSec
chave no /etc/systemd/system.conf , então tentei definir isso para "15s", mas não teve efeito. Tentei a mesma coisa no /etc/systemd/user.conf também, mas nenhuma alteração. O tempo limite ainda está definido para 5 minutos.
1 Na verdade, eu sei especificamente o que desencadeia isso, mas os detalhes não são importantes e o efeito é inevitável.
stop
script (padrão) , você poderá reescrevê-lo para executar umforcestop
ou até matar, empm2
vez de um desligamento normal.stop
com que o script init do pm2 não fizesse nada, e o deixei morrer naturalmente no desligamento. É uma solução terrível para uso geral, mas neste sistema em particular está bom. Ainda quero saber como alterar o tempo limite de 5 minutos.Respostas:
Você re-construir systemd partir da fonte, remendar o tempo limite hardwired em
systemv-sysv-generator
partirTimeoutSec=5min
para o que quiser. Ou você pede às pessoas do systemd um botão de controle em algum lugar nos cabeçalhos do Fedora / SUSE ou LSB.Ou, por outro lado, você desiste de usar esse
rc
script que possui e grava uma unidade de serviço systemd para seu serviço, cujos tempos limite podem ser definidos com umaTimeoutSec=
configuração explícita , instalados com um arquivo de configurações suspensas,/etc/systemd/system/pm2.service.d/timeout.conf
se necessário.Dado isto , isto , isto , isto , isto e outros, a primeira regra para migrar para o systemd se aplica aqui também.
Leitura adicional
fonte
/etc/systemd/system.conf
tem uma linha#DefaultTimeoutStopSec=90s
que pode ser descomentado e alterado
fonte
nvme
carro - para paralisações realmente rápidas Use Alpine Linux (nãosystemd
)