종료 시 SIGTERM과 SIGKILL 사이의 지연은 얼마나 됩니까?

종료 시 SIGTERM과 SIGKILL 사이의 지연은 얼마나 됩니까?

haltUnix 계열 시스템이 , shutdownpoweroff또는 이에 상응하는 GUI를 사용하여 정상적으로 종료되면 먼저 SIGTERM 신호를 발행하여 모든 프로세스를 정상적으로 종료하려고 시도합니다. 얼마 후 여전히 실행 중인 프로그램에 SIGKILL을 보냅니다.

이 지연은 얼마나 걸리나요? 프로그램이 정상적으로 종료되는 데 얼마나 걸리나요? 시스템마다 다른 경우 Ubuntu Server의 구체적인 기본 설정을 알고 싶습니다.

편집: Systemd의 90년대 지연이 설명된 대로입니까?여기?

답변1

Systemd 서비스는 자체 시작 및 종료 시간 제한을 지정할 수 있습니다. 지정하지 않으면 시스템 구성 파일에서 값이 설정됩니다. 구성 파일에 설정된 기본 시작 및 종료 시간은 모두 90초입니다.

~에서systemd.service의 매뉴얼 페이지:

TimeoutStopSec=

이 옵션은 두 가지 용도로 사용됩니다. 먼저 ExecStop=각 명령을 기다리는 시간을 구성합니다. 이러한 시간이 초과되면 ExecStop=후속 명령을 건너뛰고 서비스가 종료됩니다 SIGTERM. 명령을 지정 하지 않으면 즉시 ExecStop=서비스를 SIGTERM받습니다.둘째, 서비스 자체가 중지될 때까지 기다리는 시간을 구성합니다. 지정된 시간 내에 종료되지 않을 경우 강제 종료됩니다.SIGKILL( KillMode=systemd.kill(5) 참조) 단위 없는 초 단위 값 또는 "5min 20s"와 같은 시간 범위 값을 사용합니다. 시간 초과 논리를 비활성화 합니다 "infinity".DefaultTimeoutStopSec=관리자 구성 파일의 기본값(systemd-system.conf(5) 참조)

그리고로부터systemd-system.conf의 매뉴얼 페이지:

DefaultTimeoutStartSec=, DefaultTimeoutStopSec=,DefaultRestartSec=

장치 시작 및 중지에 대한 기본 시간 초과 구성및 및 에서 장치별로 구성된 대로 장치 자동 재시작 사이의 기본 절전 시간입니다 TimeoutStartSec=(서비스의 경우 장치별 설정에 대한 자세한 내용은 systemd.service(5) 참조). 서비스를 사용하는 경우 기본적으로 비활성화되어 있습니다. 비서비스 단위의 경우 기본값을 설정합니다. TimeoutStopSec=RestartSec=Type=oneshotDefaultTimeoutStartSec=TimeoutSec=DefaultTimeoutStartSec=기본값 DefaultTimeoutStopSec=은 90초입니다. DefaultRestartSec=기본값은 100밀리초입니다.

관련 정보