系统刚装好的时候,acpi的大部分功能工作正常,但是休眠不行。具体的表现是无法进入休眠状态,系统弹出一个对话框提示“hal failed to hibernate”云云。但是我自己安装了hibernate包并且手动输入hibernate命令,休眠功能却能正常使用。我不得以修改了/etc/acpi/hibernate.sh这个脚本。原先脚本从第30行到40行,代码是这样的
if [ -x /sbin/s2disk ]; then
(... 省略 ...)
fi
问题就在于系统使用了s2disk命令进行休眠。放狗搜了一把,有人遇到了同样的问题并且把它提交到了ubuntu的bug列表里,但是这是否是一个bug,还没有得到确认(截至到我写这个文章为止)。不管了,我把这几行代码用下面的代码代替
if [ -x /usr/sbin/hibernate ]; then
/usr/sbin/hibernate
else
echo -n "disk">/sys/power/state
fi
这样就搞定了,而且仍然保留了休眠时屏幕慢慢变黑的效果。这样修改完全是很粗暴的,我也没有考虑可能带来什么后果。但是目前它在我机子上是工作正常的,所以我也就不考虑那么多了。
[ 本帖最后由 Subbo 于 2007-5-9 22:06 编辑 ]

