浅析Ubuntu的休眠模式

海外服务器 (591) 2015-11-16 14:48:54

大家都知道 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的休眠模式

 

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

重启好之后“休眠”选项就会出现了。

THE END