通过ACPI进行电源循环?

时间:2013-10-01 16:40:00

标签: linux acpi

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

在我的情况下,正常的软件重启是不够的,因为显然没有重置某些外设(USB调制解调器,被阻止的SSD控制器)。

1 个答案:

答案 0 :(得分: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