Ubuntu 20.04启用休眠Hibernate配置过程是什么
导读:本文共2757字符,通常情况下阅读需要9分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 基础广义来讲,在Linux中支持三种睡眠模式, 分别是:Suspend to RAM,即狭义的挂起(Suspend),本文后面提到挂起都是指这种模式。Suspend to Disk,即我们常说的休眠(Hibernate)。Suspend to Both,也被称作Hybrid Suspend,是上面两种模式的混合,兼具两种模式的优点(和缺点)。Ubuntu桌面版默... ...
目录
(为您整理了一些要点),点击可以直达。广义来讲,在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 suspend
、systemctl hibernate
、systemctl 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配置过程是什么的详细内容,希望对您有所帮助,信息来源于网络。