Ubuntu 20.04启用休眠Hibernate配置过程是什么(hibernate,linux,编程语言)

时间:2024-05-05 15:35:38 作者 : 石家庄SEO 分类 : 编程语言
  • TAG :

    Ubuntu+20.04%E5%90%AF%E7%94%A8%E4%BC%91%E7%9C%A0Hibernate%E9%85%8D%E7%BD%AE%E8%BF%87%E7%A8%8B%E6%98%AF%E4%BB%80%E4%B9%88

广义来讲,在Linux中支持三种睡眠模式, 分别是:

Suspend to RAM,即狭义的挂起(Suspend),本文后面提到挂起都是指这种模式。

Suspend to Disk,即我们常说的休眠(Hibernate)。

Suspend to Both,也被称作Hybrid Suspend,是上面两种模式的混合,兼具两种模式的优点(和缺点)。

Ubuntu桌面版默认只有挂起(Suspend)模式,没有启用休眠(Hibernate)模式。

挂起和休眠的目标都是保存冻结系统当前状态,后续需要时“快速”唤醒恢复,但是两者的实现方式是不同的。

挂起时系统的运行数据仍然保存在内存(RAM,通常也叫MEM)中,所以系统还是会以较低的功耗消耗电池电量。 这种状态下唤醒系统恢复非常快速,在普及SSD的现在是包括苹果在内很多操作系统的默认选项。

休眠时系统的运行数据被写入磁盘(DISK),系统也会完全切断电源(大部分情况下), 唤醒时需要先从硬盘读取数据到内存,因为恢复速度比挂起慢,实测甚至要慢于开机(20s vs 10s)。

休眠的好处就是笔记本实际是关机状态,完全不耗电不发热,不用担心意外断电、进水和误触键盘唤醒系统, 可以放心的携带和保存。

Linux底层有两种实现来支持挂起和休眠,一种是内核(kernel)自带的swsusp, 另一种是uswsusp('Userspace Software Suspend') ,后者封装了前者,并且提供了更多的功能, 通常swsusp已经够用了。

swsusp的原理是向/sys/power目录中的文件写入特定的状态字符串来操作系统的状态。

最重要的是/sys/power/state/sys/power/mem_sleep/sys/power/disk三个文件, 分别保存了当前系统支持的睡眠模式、挂起方法、休眠方法, 具体信息可以参考官方文档

Systemd工具提供了睡眠管理的高级命令systemctl suspendsystemctl hibernatesystemctl hybrid-sleep

配置/swapfile,启用休眠需要比内存稍大的swap空间,推荐使用swapfile,从2.4内核开始, swapfile的性能已经不弱于swap分区,并且更容易调整大小,如果使用btrfs文件系统,需要内核升级到5.0以上才支持swapfile

swap文件的大小可以参考下面的表格

文件系统启动时挂载/swapfile

配置启动内核参数

重启后执行sudo systemctl hibernate测试是否可以正常休眠。

配置Gnome界面

这时休眠功能已经生效,但是每次都需要输入命令太繁琐, 我们需要配置Gnome界面按钮

首先安装Hibernate Status Button插件

然后增加如下配置文件

重启后可以在菜单中看到挂起和休眠按钮了。

本文:Ubuntu 20.04启用休眠Hibernate配置过程是什么的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:怎么实现Java代理模式的静态代理下一篇:

6 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18