我如何找到 acpi 事件的触发器?

我如何找到 acpi 事件的触发器?

我的服务器每次半夜都会关闭。

acpi 事件 power_button 被触发。在 /etc/acpi/events/power_button
power_button 中:

# care about the power button
event=button/power.*
action=/usr/lib/acpid/power_button

我如何才能找出此事件的“呼叫者”或触发器?

答案1

power_button是一个脚本,因此您需要做的就是保存该脚本的执行回溯。这个想法是编写一个脚本,从启动开始分析进程树power_button,调用者进程应该位于其中的某个位置。

这个答案。将脚本放入/usr/lib/acpid/power_button并将其输出保存到文件中:这应该可以识别出罪犯,除非原因不是数据中心的清洁工:)

答案2

完全取决于你的 Linux 风格,但我过去发现这很有用:

/var/log/acpi.log

还可以使用“lastcomm”来查找前面的进程。

相关内容