关闭linux服务器并在特定时间自动打开

我正在做一个任务,讲师要求我创建一个bash脚本,在晚上11点关闭服务器,然后在早上6点打开它。 我可以通过使用sudo shutdown -h 23:00来实现它并且它可以工作。 但问题是我不知道如何在早上6点自动打开它,我找不到任何可以做到这一点的命令。 任何帮助,将不胜感激。

首先,您需要检查是否可以使用RTC wakealarm唤醒系统:

 sudo sh -c "echo 0 > /sys/class/rtc/rtc0/wakealarm" sudo sh -c "echo `date '+%s' -d '+ 3 minutes'` > /sys/class/rtc/rtc0/wakealarm" cat /sys/class/rtc/rtc0/wakealarm 

现在检查:

 cat /proc/driver/rtc 

这应该返回一个参数列表。 检查alrm_time是未来3分钟, alrm_date是今天。

如果工作正常,请创建/usr/local/sbin/shutwake脚本:

 #!/bin/bash sh -c "echo 0 > /sys/class/rtc/rtc0/wakealarm" sh -c "echo `date '+%s' -d '+ 7 hours'` > /sys/class/rtc/rtc0/wakealarm" shutdown -h now 

最后编辑用户crontab ,键入crontab -e并添加以下行:

 0 23 * * * /usr/local/sbin/shutwake