특정(SIG) 신호를 systemd에 어떻게 보낼 수 있나요?

특정(SIG) 신호를 systemd에 어떻게 보낼 수 있나요?

~에systemd의 맨페이지, 라는 섹션이 있습니다.신호, 다양한 신호와 신호가 시스템에 미치는 영향에 대해 설명합니다.

예를 들어 SIGRTMIN+3시스템을 재부팅합니다.

SIGRTMIN+3

시스템을 정지하고 Halt.target 장치를 시작합니다. 이는 대부분 다음과 같습니다.

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

SIGRTMIN+15는 즉시 머신을 재부팅합니다.

SIGRTMIN+15

Immediately reboots the machine

매뉴얼 페이지는 동등한 명령을 제공하지 않습니다. 나는 사용해 보았다.

systemd SIGRTMIN+15

하지만 오류가 발생하면 잘못된 것 같습니다 Excess arguments..

이 신호를 어떻게 사용해야 합니까 systemd?

답변1

먼저 그들은 sigterm이 아닙니다. 다음으로 인수가 아닌 신호를 전달합니다. 신호를 보내기 위해 우리는 kill. 보다 man kill. 프로세스를 지정해야 합니다. systemd항상 init 프로세스인 프로세스 1로 실행됩니다.

그러므로 보내려면 을 SIGRTMIN+15수행하십시오 sudo kill -SIGRTMIN+15 1.

shutdown --poweroff그러나 , 또는 명령을 사용하는 것이 더 좋습니다 shutdown --reboot.

관련 정보