【发布时间】:2013-12-04 10:53:51
【问题描述】:
我知道您可以检测到 SIGHUP、SIGTERM、SIGQUIT 等,但是否可以检测系统何时收到停止/断电/关机信号?
【问题讨论】:
我知道您可以检测到 SIGHUP、SIGTERM、SIGQUIT 等,但是否可以检测系统何时收到停止/断电/关机信号?
【问题讨论】:
所有进程都会收到 SIGTERM 信号,然后是 SIGKILL 信号。据我所知,没有办法知道这些信号是否是因为关机而专门发送的。请参阅this relevant question 了解更多信息。
【讨论】:
SIGHUP、SIGTERM、SIGQUIT 等信号被发送到特定进程并可以在那里进行处理。 Powerr 关闭和关机由系统的 init 进程处理。它们取决于您正在使用的 init 的实现(Upstart、SysV init),并且没有通用的方法可以从另一个进程中检测和处理它们,无论该进程是用 Python 还是任何其他语言编写的。
【讨论】: