我有 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 年……