rtcwake
我正在尝试使用此命令从 crontab运行:
0 2 * * * /usr/sbin/rtcwake -u -m disk -t $(date +\%s -d 'today 0730') >> /tmp/rtcwake.log 2>&1
因此,正如您从该命令中看到的,我告诉 cron 作业每天凌晨 2 点执行 rtcwake,并让 rtcwake 使用当地时间在同一天的早上 7:30 唤醒自身(我从 root 帐户运行 cron 作业)
不幸的是,这不起作用,我从日志中收到此消息:
rtcwake: wakeup from "disk" using /dev/rtc0 at Fri Sep 1 06:30:00 2017
rtcwake: write error
有人可以解释一下我需要做什么吗,我认为从帐户运行这个root
可以解决任何权限错误,或者这可能是空间问题(虽然我有 7TB 的空间,但也许驱动器太小)?
注意:如果我以 root 身份rtcwake
在较短的时间内运行命令本身,它就可以正常工作,甚至可以从 cron 运行。
我正在运行 16.04 ubuntu 服务器。
答案1
写入错误很奇怪,我无法完全修复它,但我已经解决了我的问题,而不是运行这个命令:
0 2 * * * /usr/sbin/rtcwake -u -m disk -t $(date +\%s -d 'today 0730') >> /tmp/rtcwake.log 2>&1
我运行这个命令:
0 2 * * * /usr/sbin/rtcwake -u -m off -t $(date +\%s -d 'today 0730') >> /tmp/rtcwake.log 2>&1
off
并非所有系统都支持,因此最好反复试验。服务器已经按照我的要求运行了 2 个晚上。