https://www.man7.org/linux/man-pages/man7/bootup.7.html
在reboot的最后一个阶段会进入:systemd-shutdown程序,在这个程序里,会将未退出的用户态的进程做kill(SIGTERM),如果SIGTERM依然未能将程序终结,会调用kill(SIGKILL)来将程序终结掉。
尝试终结之后有一个等待超时的过程,这个超时时间是90秒。上面两个kill的超时时间都是90秒。而且从代码看应有相应的日志打印出来。比如:Mar 07 11:29:13 t-a systemd-shutdown[1]: Sending SIGTERM to remaining processes…
上面这个日志就是再kill(SIGTERM)之前的一个日志打印。
在最近的问题分析中发现,在qemu-kvm带起来的系统下,如果有一个程序在reboot的过程中未能及时的退出,而且阻塞了SIGTERM信号。但是依然看不会到kill(SIGKILL)的日志打印。非常的奇怪!
额外信息
Linux may print the message “Shutdown timed out” when it is unable to complete the shutdown process within