>백엔드 개발 >Golang >기본 프로세스가 종료될 때 Systemd가 하위 프로세스를 종료하는 것을 방지하는 방법은 무엇입니까?

기본 프로세스가 종료될 때 Systemd가 하위 프로세스를 종료하는 것을 방지하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-24 19:17:10741검색

How to Prevent Systemd from Killing Child Processes When the Main Process Exits?

주 시스템 프로세스에서 하위 프로세스 분리

주 프로세스에서 하위 프로세스를 생성할 때 기본 프로세스가 종료된 경우에도 하위 프로세스가 활성 상태로 유지되도록 하는 것이 중요합니다. 종료되었습니다. 이 동작은 장기 실행 백그라운드 작업을 관리할 때 특히 바람직합니다.

특정 시나리오에서는 systemd 서비스 관리자에서 하위 프로세스가 시작될 때 기본 프로세스(exetest)에서 하위 프로세스를 분리하려고 합니다. 그러나 하위 프로세스가 기본 프로세스와 함께 종료되는 것을 확인했습니다.

해결 방법은 다음 줄을 포함하도록 systemd 구성 파일(/etc/systemd/system/exectest.service)을 수정하는 것입니다.

KillMode=process

기본적으로 systemd는 종료 시 기본 프로세스의 제어 그룹 내의 모든 하위 프로세스를 종료하는 "제어 그룹" 종료 모드를 적용합니다. 이를 "프로세스"로 변경하면 systemd에게 기본 프로세스 자체만 종료하고 하위 프로세스는 그대로 유지하도록 지시하는 것입니다.

이 수정을 통해 하위 프로세스는 기본 프로세스 종료 또는 재시작 후에도 계속 실행되고 유지됩니다. 프로세스는 systemd에서 시작된 경우에도 마찬가지입니다.

위 내용은 기본 프로세스가 종료될 때 Systemd가 하위 프로세스를 종료하는 것을 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.