说明:如果不成功请参考一下文章最后的内容,也许会有帮助。
其实不止在ubuntu里面,fedora里面我也遇到了这个问题,就是电脑可以重启,但是不能直接关机,否则就一直停在关机界面,需手动关机。郁闷很久了,终于让我找到了解决办法:
1.打开终端,输入
sudo gedit /etc/modules
在文件最后一行回车,另起一行添加
apm power_off=1
保存,关闭
2.在中端输入
sudo gedit /etc/rc0.d/S90halt
找到如下代码:
hddown="-h"
if grep -qs '^md.*active'
/proc/mdstat
then
hddown=""
fi
和
netdown="-i"
if [ "$NETDOWN" = "no" ];
then
netdown=""
fi
把这两段代码注释掉,如下:
# hddown="-h"
# if grep -qs '^md.*active' /proc/mdstat
# then
# hddown=""
# fi
还有
# netdown="-i"
# if [ "$NETDOWN" = "no" ]; then
# netdown=""
# fi
保存,退出
3.在中端输入:
sudo gedit /etc/default/grub
找到
GRUB_CMDLINE_LINUX=""
修改成:
GRUB_CMDLINE_LINUX="noacpi acpi=off acpi=force apm power_off=1"
保存,退出
再次在中端输入:
sudo update-grub
就可以正常关机和开机了。
注:
笔者按照GRUB_CMDLINE_LINUX="noacpi acpi=off acpi=force apm power_off=1"设置未能正常关机,去掉 acpi=force后关机正常。从解决办法可以看出,关机异常是因为电源管理的问题;
因为笔者是按照先完全按照“注”以前的内容完全设置后再删除“注1”内容的,所以没有验证直接删除“注1”内容进行修改的有效性,如果你是这样做的,请将结果在评论区说明;
因为非正常关机的情况下系统读取grub会出问题,而上文的修改直接体现在grub上,所以,如果你的机器非正常关机,以上修改会无效。具体情况说明如下:
自动选择系统出问题:系统选择界面不会再出现进入系统的倒计时,所以只能手动选择;
正常关机出问题(如果你是按照上文方法设置后才能正常关机):与修改前状况一样,只有电源灯亮,系统已经关闭(姑且称这种情况未“伪关机”),需要手动关闭电脑;
对与非正常关机后重新出现“伪关机”的情况,我采用的解决办法是重新加上acpi=force, 然后再将其删去,之后就可以正常关机了。但是,因为这只是grub问题,而笔者在实际中遇到情况a时发现:非正常关机之后出现情况a,然而在一次正常关机 (包括伪关机之后手动关机)之后,情况a自动消失,所以笔者猜测,对于问题b,在一次正常关机之后也会恢复正常(实际测试了一下,不会自动恢复正常,需要加上acpi=force再删除才可以)。希望有读者实验之后在评论区给出结果。(注:最近使用Xubuntu不再出现正常关机后又不能正常关机的状况)
转载:http://hi.baidu.com/liang_zuokui/item/0a648f3cb6edb89bf4e4ad10