(编辑:jimmy 日期: 2024/12/27 浏览:2)
家都知道 Windows 有休眠模式,其实 Ubuntu 也有。休眠模式简单来说,就是可以在用户暂时离开时将内存中的所有内容都写入到硬盘当中,当用户下次开机时,就可以直接启动到上次保存的时间状态。
打个比方,你正用 LibreOffice 在处理一个文档,同时打开了很多参考网页和其它文件,下班时间到了,你怕第二天回来再去找那些参考网页和文件等会影响你的写作思路,现在就可以在离开时将 Ubuntu 进行休眠。Ubuntu 休眠后会将所有的未完成的处理任务都写入到硬盘再关机,下次再开机时会自动从硬盘去调用上次的状态。
检查Ubuntu休眠模式是否正常
现在我们要检查一下当前的 Ubuntu 是否允许进行休眠模式,要允许休眠我们最好为当前系统分配了一个与内存同样大小的 SWAP 分区(大多用户在系统安装时都会进行分配)。使用 “Ctrl + Alt + T” 快捷键打开一个终端,执行如下命令:
复制代码代码如下:
sudo pm-hibernate
命令执行后,Ubuntu 将会自动关机并断电。再次开机后,如果一切正常的话我们将可以直接恢复到上次关机时的状态,这表明当前 Ubuntu 系统的休眠模式工作正常。
注意:如果关机前的状态和会话没被恢复或遇到其它错误的话,可能是由多种原因造成的,在下一步操作之前需要先进行排错。
重新启用休眠
如果通过上述步骤已经确认 Ubuntu 休眠模式在你的系统上可以正常工作,我们便可以将“休眠”按钮添加回我们的菜单当中。
执行如下命令在/etc/polkit-1/localauthority/50-local.d/目录中创建一个com.ubuntu.enable-hibernate.pkla文件:
复制代码代码如下:
sudo vi /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
在上述文件中写入如下内容:
复制代码代码如下:
[Enable Hibernate in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes
Ubuntu 从 14.04 开始全面支持低功耗模式,通过以上配置文件的写法应该就可以调用完成了。但如果你使用的是早期版本 Ubuntu 可以试试如下写法:
复制代码代码如下:
[Enable hibernate in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
注意:以上写法不适用于 Ubuntu 13.10
如果你不能完全确定或为了保险起见,也可以同时把两种写法都写进 com.ubuntu.enable-hibernate.pkla 配置文件。
[Enable Hibernate in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Enable Hibernate in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes
配置文件修改好后我们需要重启系统或重启 indicator 会话:
复制代码代码如下:
killall indicator-session-service
笔记本电脑休眠之后无法启动问题的解决
1. 问题引入
Ubuntu系统的Power设置休眠时间,在系统进入休眠之后,系统无法启动。只能通过冷启动,方可重新进入系统。
2. 问题分析
首先分析一下问题,系统在休眠之后,进入死机的状态,无法响应键盘和鼠标事件,但是键盘本身是可以进行状态切换的,比如可以开关网络。但是显示屏幕上的内容无法更新。
升级到最新版本,问题依然存在。
从网络上查询了一下,确认一下是否和我所使用的笔记本的型号有关,经过查询无法。因为在13.x版本的时候,休眠功能是正常的。
3. 问题确定
在网上有人提到说,是不是显卡驱动本身存在的缺陷,由于Ubuntu是开源的Linux系统,厂商未曾或提供的驱动会有一定的问题或者兼容性。
说明:
(1). 启动切换测试之后,当前的这个驱动是最为适合我的机器的驱动
(2). 网络上有文章说,开源驱动很好,测试结果是无法解决死机问题。
4. 写在最后
由于Ubuntu从12.x开始,从系统禁用Hibernate休眠功能,所以,需要用户自行打开休眠功能。据传是由于系统无法正确保存应用状态所致,故默认禁用休眠功能。
复制代码代码如下:
sudo pm-hibernate
------测试休眠功能,并让系统进入休眠