Como posso enviar um sinal específico (SIG) para o systemd?

Como posso enviar um sinal específico (SIG) para o systemd?

Sobrepágina de manual do systemd, há uma seção chamadaSinais, que fala sobre diferentes sinais e como eles afetam o sistema.

Por exemplo, SIGRTMIN+3reinicia o sistema:

SIGRTMIN+3

Para a máquina, inicia a unidade halt.target. Isto é principalmente equivalente a

systemctl start halt.target  --job-mode=replace-irreversibly

e SIGRTMIN+15 reinicia imediatamente a máquina:

SIGRTMIN+15

Immediately reboots the machine

A página man não fornece um comando equivalente. Eu tentei usar

systemd SIGRTMIN+15

mas parece errado quando recebo Excess arguments.um erro.

Como devo usar esses sinais systemd?

Responder1

Primeiro, eles não são sigterm. Em seguida você passa um sinal, não uma discussão. Para enviar sinais usamos kill. Ver man kill. Você tem que especificar o processo. systemdsempre será executado como processo 1, o processo init.

Portanto, para enviar SIGRTMIN+15, faça sudo kill -SIGRTMIN+15 1.

No entanto, será melhor usar o comando shutdown --poweroffou shutdown --reboot.

informação relacionada