安装uswsusp

Ubuntu gnu/linux只需

代码:
sudo aptitude install uswsusp

Arch gnu/linux系统

代码:
sudo pacman -S uswsusp

下面两段Ubuntu跳过, 直接看最后的让gnome(或者Hal)改用uswsusp方式休眠

修改配置/etc/suspend.conf(Ubuntu已经自动配置好了且Ubuntu下的文件是/etc/uswsusp.conf)

代码:
resume device = <path_to_resume_device_file>

中的<path_to_resume_device_file>改成你的swap分区如

代码:
resume device = /dev/sda2

uswsusp还可以压缩内存镜像, 不仅能使swape分区大大小于内存, 更能加快恢复的过程(因为读硬盘的时间减少了).
去掉compress前面的注释, 即

代码:
compress = y

在文件最后添加一行, 清楚设置系统关闭而不是重启.

代码:
shutdown method = shutdown

重新创建intramfs(Ubuntu已经自动重建了)
修改/etc/mkinitcpio.conf
在hook行filesystems前加入uresume(如果有resume, 去掉resume)

代码:
HOOKS="base udev autodetect pata scsi sata uresume filesystems"

然后重建intramfs

代码:
sudo mkinitcpio -p kernel26

现在先在终端中测试一下
休眠

代码:
sudo s2disk

挂起

代码:
sudo s2ram

或者

代码:
sudo s2ram --force

使Gnome(或者说Hal)改用uswsusp方法休眠

代码:
sudo su
echo "SLEEP_MODULE=uswsusp">/etc/pm/config.d/module

然后就有近乎完美的休眠, 挂起了.
我的笔记本内存为被显卡用了128MB的1G内存
sawp只有500多MB
挂起和休眠不会像以前那样老是死掉.
休眠后恢复从grub开始计时只需12秒(而用原来的方法需要15秒, 可能内存大优势优势会更明显)
快! 人能感觉到的快!

解决休眠后屏幕黑屏
发现其原因是休眠时启动的锁定屏幕的进程和s2disk冲突.
所以解决方法就是让s2disk先sleep几秒钟等锁定屏幕完成后再运行.
编辑
/usr/sbin/pm-hibernate

代码:
#!/bin/sh

下面添加一行

代码:
sleep 5

同理可用修改/usr/sbin/pm-suspend

 
待机 sudo s2ram --force

swap分区不足ubuntu休眠的更多相关文章

  1. 阿里云服务器创建swap分区

    阿里云服务器使用了4核8G内存配置,但最近由于jenkins构建时执行gradle打包安卓应用,导致即时的内存严重不足,线上应用长时间无法访问. 执行free命令才发现,swap分区一直是没有创建的. ...

  2. Ubuntu 16.04创建Swap分区或增加Swap分区容量(转)

    要在Ubuntu中要创建Swap分区主要有如下2种方式: 一.传统创建方式 一般情况下,我们都会使用dd命令来预先创建交换分区文件,然后再用/dev/zero将该文件的内容全部置零,创建时还将用到bs ...

  3. Ubuntu Server Swap 分区设置

    方案一:仅在内存耗尽的情况下才使用 swap 分区 # 首先进入 sudo 模式 sysctl vm.swappiness=0 # 临时生效 echo "vm.swappiness = 0& ...

  4. Ubuntu 新建swap分区及启用

    个人电脑配置:500G机械硬盘+16G NGFF SSD+8G Physical Memory 之前安装Ubuntu16.04,默认装到NGFF的SSD里,/和swap分区一共才16G,于是删除swa ...

  5. Ubuntu下调整swap分区的大小

    转自:http://blog.chinaunix.net/uid-7573623-id-2048964.html 由于安装oracle 的时候,swap太小不能继续安装,于是想有什么方法在不不用安装o ...

  6. ubuntu 创建swap分区

    通常,Linux系统中swap分区可以通过两种方式指定,分别为:一.在磁盘分区的时候格式化一个swap分区:二.在文件系统中创建一个swap文件作为swap分区.此文主要介绍第二种方式.步骤如下: 1 ...

  7. Ubuntu增加Swap分区大小

    参考:http://blog.csdn.net/mznewfacer/article/details/7334592 以下摘自上述地址内容,并做了点小修改: 1.首先用命令free查看系统内 Swap ...

  8. Ramdisk虚拟内存盘,Swap分区

    虚拟内存盘是通过软件将一部分内存(RAM)模拟为硬盘来使用的一种技术.相对于直接的硬盘文件访问来说,这种技术可以极大的提高在其上进行的文件访问的速度.但是RAM的易失性也意味着当关闭电源后这部分数据将 ...

  9. linux swap 分区那点事儿

    前言 前段时间在用程序对较大数据进行处理时,发现自己电脑原有内存不够用而经常行卡死,于是想到了利用swap分区来扩容内存的方式.现在做一个简要的总结: swap分区的概念 初试swap分区是在进入实验 ...

随机推荐

  1. PHP Warning: Module 'memcache' already loaded in Unknown on line 0

    出现类似PHP Warning: Module * already loaded in Unknown on line 0,一般是可能因为升级php导致的组件重复加载,解决就是 1.vi /etc/p ...

  2. 设计模式(一)Chain Of Responsibility责任链模式

    设计模式篇章,源于网课的学习,以及个人的整理 在我们接收用户提交的字符时,常常会使用到过滤,在学习责任链模式前,我们是这样做的 1.定义一个类 public class MsgProcesser { ...

  3. hibernate事务规范写法

    @Test public void testTx() { SessionFactory sessionFactory = null; Session session = null; Transacti ...

  4. Pandas中关于accessor的骚操作

    来自:Python那些事 pandas中accessor功能很强大,可以将它理解为一种属性接口,通过它获得额外的方法. 下面用代码和实例理解一下: import pandas as pd pd.Ser ...

  5. 串口.Qt532测试(同步)

    环境:Win7x64.Qt5.3.2 MSVC OpenGL(x86).vs2010(x86) ZC:这里的例子是 同步的函数操作,貌似 如果子线程在等待 WaitCommEvent(...)或Rea ...

  6. [HTTP]_[C/C++]_[解析URL的转义字符百分比字符串]

    场景: 1.有时候获取一个超链接时,或者一个图片src时,里面的地址带有%XX,这样如果当成文件路径处理会不识别.所以要把转义字符解码. 2.它其实就是ASCII码的十六进制表示. 以下是stacko ...

  7. Meta referrer标签的,可以防止CSRF的攻击

    Meta referrer标签的简要介绍 在某些情况下,出于一些原因,网站想要控制页面发送给 server 的 referer 信息的情况下,可以使用这一 referer metadata 参数. 参 ...

  8. MySQL ICP(Index Condition Pushdown)特性

    一.SQL的where条件提取规则 在ICP(Index Condition Pushdown,索引条件下推)特性之前,必须先搞明白根据何登成大神总结出一套放置于所有SQL语句而皆准的where查询条 ...

  9. HTML第一章总结

    第一章总结 HTML那些事儿:Web Sever, Web Browser,HTML files 如果你要做网页,那你写了HTML文档就要上传到 Web Server 上 在客户使用 Web Brow ...

  10. python3 语法小结

    (1) 关键字 # -*- coding: utf-8 -*- #!/usr/bin/python3 """ 1.关键字(保留字) ['False', 'None', ' ...