得之我幸 失之我命

when someone abandons you,it is him that gets loss because he lost someone who truly loves him but you just lost one who doesn’t love you.

Gave up waiting for suspend/resume device

问题描述:
开机过程中显示Gave up waiting for suspend/resume device

可能原因:
swap的uuid变动导致和/etc/initramfs-tools/conf.g/resume文件中的uuid对应不上

尝试方法:

  1. blkid,查看所有分区uuid
  2. 编辑resume,修正uuid
  3. update-initramfs -u
  4. 重启提示消失

顺便一提内存替换swap的两种方式

第一种
分区的建立和修改就不说了,推荐用fdisk,其他的修改分区的工具都行,当分区建立好之后,需要做以下几件事:

  1. 把原来的swap关掉.
    1
    $ sudo swapoff -a
  2. 把/etc/fstab下的swap注释掉
  3. 查找新分区的UUID
    1
    $ sudo blkid
  4. 修改/etc/fstab,把新swap加上
  5. 激活新swap(这里假定新分区为sda5)
    1
    $ sudo swapon /dev/sda5
  6. 修改/etc/initramfs-tools/conf.d/resume上的UUID为新分区的UUID
  7. 重建initrd档
    1
    $ sudo update-initramfs -u

第二种

  1. 创建Swap文件
    1
    2
    3
    $ mkdir swap
    $ cd swap
    $ sudo dd if=/dev/zero of=swapfile bs=1024 count=100000
  2. 把生成的文件转换成Swap文件
    1
    2
    3
    $ sudo mkswap swapfile
    Setting up swapspace version 1, size = 102395 kB
    no label, UUID=09fde987-5567-498a-a60b-477e302a988b
  3. 激活Swap文件。
    1
    $ sudo swapon swapfile
  4. 如果需要一直保持这个swap,可以把它写入/etc/fstab文件。(查看UUID同上)
    1
    swapfilepath swap swap defaults 0 0

优化swap
在debian系里面,swappiness的值的大小对如何使用swap分区是有着很大的联系的。
swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,
swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
两个极端,对于ubuntu的默认设置,这个值等于60,建议修改为10。具体这样做:

  1. 查看你的系统里面的swappiness
    1
    $ cat /proc/sys/vm/swappiness
    不出意外的话,应该看到是 60
  2. 修改swappiness值为10
    1
    $ sudo sysctl vm.swappiness=10
    但是这只是临时性的修改,在重启系统后会恢复默认的60,所以,还要做一步:
    1
    $ vim  /etc/sysctl.conf
    在这个文档的最后加上这样一行:
    1
    vm.swappiness=10

然后保存,重启。

either I will find a way, or I will make one.