halt
Unix 계열 시스템이 , shutdown
등 poweroff
또는 이에 상응하는 GUI를 사용하여 정상적으로 종료되면 먼저 SIGTERM 신호를 발행하여 모든 프로세스를 정상적으로 종료하려고 시도합니다. 얼마 후 여전히 실행 중인 프로그램에 SIGKILL을 보냅니다.
이 지연은 얼마나 걸리나요? 프로그램이 정상적으로 종료되는 데 얼마나 걸리나요? 시스템마다 다른 경우 Ubuntu Server의 구체적인 기본 설정을 알고 싶습니다.
편집: Systemd의 90년대 지연이 설명된 대로입니까?여기?
답변1
Systemd 서비스는 자체 시작 및 종료 시간 제한을 지정할 수 있습니다. 지정하지 않으면 시스템 구성 파일에서 값이 설정됩니다. 구성 파일에 설정된 기본 시작 및 종료 시간은 모두 90초입니다.
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=oneshot
DefaultTimeoutStartSec=
TimeoutSec=
DefaultTimeoutStartSec=
기본값DefaultTimeoutStopSec=
은 90초입니다.DefaultRestartSec=
기본값은 100밀리초입니다.