0

是否可以使用 ACPI 或其他软件命令进行真正的电源循环?

在我的情况下,正常的软件重启是不够的,因为显然这不会重置某些外围设备(USB 调制解调器,一个被阻塞的 SSD 控制器)。

4

1 回答 1

2

我找到了另一个相当简单的解决方案,它不需要特殊的 ACPI 调用就可以做到这一点。大多数计算机内部都有一个 RTC 时钟,通常支持“RTC 警报”,它会在指定的时间唤醒计算机。

以下命令将停止计算机并在 30 秒后重新启动:

echo `date '+%s' -d '+ 30 seconds'` > /sys/class/rtc/rtc0/wakealarm \
    && halt

或者没有干净关机的替代方案(它会立即关闭计算机,有文件系统损坏的风险):

echo `date '+%s' -d '+ 30 seconds'` > /sys/class/rtc/rtc0/wakealarm \
    && sleep 2 \
    && echo o >/proc/sysrq-trigger

希望这对某人有用..

注意:要在上电时重置 RTC 警报,请使用echo 0 > /sys/class/rtc/rtc0/wakealarm

于 2013-10-02T07:53:53.133 回答