/dev/rtc0 未启用唤醒事件,并且无法将“0”写入 /sys/class/rtc/rtc0/wakealarm

/dev/rtc0 未启用唤醒事件,并且无法将“0”写入 /sys/class/rtc/rtc0/wakealarm

我有 Ubuntu 13.04 桌面 64 位

运行时rtcwake -s 30,我得到以下结果:

rtcwake: assuming RTC uses UTC ...
rtcwake: open failed: /sys/class/rtc/rtc0/device/power/wakeup: No such file or directory
rtcwake: /dev/rtc0 not enabled for wakeup events

运行后fwts s3 --s3-quirks -a,我在日志中得到了类似的答案:

Cannot write '0' to /sys/class/rtc/rtc0/wakealarm

运行sudo sh -c "echo 0 > /sys/class/rtc/rtc0/wakealarm,得到结果:

sh: 1: cannot create /sys/class/rtc/rtc0/wakealarm: Directory nonexistent

如何修复此问题?

或者如何启用/dev/rtc0

答案1

在我的 ubuntu 12.04(64 位)系统上sudo rtcwake -s 30 -mode mem可以按预期工作(但我需要将模式设置为“mem”(=暂停到 ram)或“disk”,因为我的系统(acer 笔记本电脑)不支持默认的“待机”模式。

您的系统在什么硬件上运行?它有 RTC 吗?您的系统可以发现它吗(首先,检查 的输出ls -l /dev/rtc?)?

您的输出行rtcwake: open failed: /sys/class/rtc/rtc0/device/power/wakeup: No such file or directory 可能会显示问题的相关部分。在我的系统上 /sys/class/rtc/rtc0/device/power/wakeup 也不存在(我没有收到该错误消息)但是 wakealarm-namedpipe 位于/sys/class/rtc/rtc0/wakealarm。您的系统中存在这样的系统吗?

如果是这种情况,请尝试直接写入,例如通过

sudo sh -c ‘echo "+00-00-00 00:00:30" > /sys/class/rtc/rtc0/wakealarm'

请注意,此命令不会将您的系统设置为睡眠状态,而仅安排唤醒闹钟,因此您可能需要自行将系统设置为待机/睡眠状态。

那么,cat /proc/driver/rtc说什么(特别是以 alrm_time、alrm_date 和 alrm_pending 开头的行)?

可能不是一个答案,但我现在还不能发表评论......

编辑:哎呀,刚刚意识到这个问题是在 2012 年问的,而不是 2013 年……

相关内容