大家都知道 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

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

休眠是一个非常实用的功能,可惜的是默认被 Ubuntu 给移除了,但我们通过本文所介绍的方法可以很容易地启用 Ubuntu 的休眠模式,有兴趣的朋友赶快试试吧。

[转]如何启用Ubuntu的休眠模式的更多相关文章

  1. Linux 休眠,挂起(待机),关机等几个命令的区别及如何实现;如何启用Ubuntu的休眠模式

    这里对linux 的几个命令整理下,有:休眠,挂起,待机,关机等几个命令的区别及如何实现. 休眠是一种更加省电的模式,它将内存中的数据保存于硬盘中,所有设备都停止工作.当再次使用时需按开关机键,机器将 ...

  2. 打开Win7休眠模式和离开模式的方法

    打开Win7休眠模式和离开模式的方法 ●启动休眠模式 从开始菜单中找到“附件→命令提示符”,手工输入如下命令:powercfg -a,从这里可以清楚的看到,计算机是支持休眠的,显示“尚未启用休眠&qu ...

  3. ubuntu如何开启root,如何启用Ubuntu中root帐号

    jingyan.baidu.com/article/495ba84116104238b20ede62.html ubuntu如何开启root,如何启用Ubuntu中root帐号 | 浏览:8344 | ...

  4. 如何在settings里的休眠模式里添加永不休眠

    最近项目需求里需要在设置菜单的休眠模式里添加一项永不休眠选择项.针对MTK平台的修改方式有如下几步骤.(其他平台和android原生系统的修改方式类似,只是android原生系统修改永不休眠需要通过设 ...

  5. Wake-On-LAN待机或休眠模式中唤醒

    Wake-On-LAN简称WOL,是一种电源管理功能:如果存在网络活动,则允许设备将操作系统从待机或休眠模式中唤醒.许多主板厂商支持IBM提出的网络唤醒标准.该标准允许网络管理员远程打开PC机电源,以 ...

  6. Linux合上笔记本不进入休眠模式

      最近一个问题困扰了我很久,入职之前和人事说过工作中会用自己的电脑,但是人事还是坚持要给我发一个电脑,没办法,公司没有补贴,那就领了吧,索性将这个笔记本配置成了Fedora系统,用来当测试机,但是一 ...

  7. mac休眠掉电快,更改休眠模式

    打开终端输入: $ pmset -g 查看休眠模式 hibernatemode 发现值为3, 这是大多数的设置,如果为0 ,那么休眠时严重掉电, 我们可以改变这个模式: $ sudo pmset -a ...

  8. Asp.Net 启用全局IE兼容模式

    Asp.Net 启用全局IE兼容模式,不失为一个种简单最有效的解决方案: <system.webServer> <!-- 配置全局兼容 --> <httpProtocol ...

  9. 设置macbook休眠模式

    前言: macbook默认合上盖默认是进入混合休眠模式模式(mode 3),此时电脑还会供电.不想耗电的话关机的话当前的工作状态就丢失了. macbook实际上是可以进入休眠模式的,只是没开放出来,我 ...

随机推荐

  1. 如何在 apache 中开启 gzip 压缩服务

    服务器设置 gzip 压缩是 web 开发里很普遍的做法.假设你要请求一个 100k 的文件,网络传输速度为 50k/s,需要 2s 才能得到数据,但是如果在服务器设置了 gzip 压缩,将服务端的文 ...

  2. web性能优化——简介

    简介 性能优化的第一准则:加缓存.几乎绝大部分优化都围绕这个来进行的.让用户最快的看到结果. 性能优化的第二准则:最小原则.绝不提供多余的信息.比如,静态资源(图片.css.js)压缩,图片的滚动加载 ...

  3. Nodejs爬虫进阶=>异步并发控制

    之前写了个现在看来很不完美的小爬虫,很多地方没有处理好,比如说在知乎点开一个问题的时候,它的所有回答并不是全部加载好了的,当你拉到回答的尾部时,点击加载更多,回答才会再加载一部分,所以说如果直接发送一 ...

  4. (十一)外观模式详解(Service第三者插足,让action与dao分手)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 各位好,LZ今天给各位分享一 ...

  5. matlab 功率谱分析

    matlab 功率谱分析 1.直接法:直接法又称周期图法,它是把随机序列x(n)的N个观测数据视为一能量有限的序列,直接计算x(n)的离散傅立叶变换,得X(k),然后再取其幅值的平方,并除以N,作为序 ...

  6. JavaScript学习笔记-简单的倒计时跳转页面

    <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...

  7. bindService初步了解

    bindService的使用: 当需要调Service里面的方法时,可以用bindService() 首先定义一个类继承于Service,然后配置Manifest.xml文件 public class ...

  8. hdu3572 最大流

    Task Schedule Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submi ...

  9. js-处理金额(正则表达式)

    function checkRates(str){ var re = /^(([1-9][0-9]*\.[0-9][0-9]*)|([0]\.[0-9][0-9]*)|([1-9][0-9]*)|([ ...

  10. js处理日期格式化-年月日周

    方法一 Date.prototype.format = function(format){ var o = { "M+" : this.getMonth()+1, //month ...