Ubuntu22.04启用休眠(Hibernation)模式

Ubuntu22.04启用休眠(Hibernation)模式

@[TOC]使用了swap文件,大小应大于内存,具体设置方法参见Ubuntu调整swap大小

1. 找出交换文件所在分区的UUID

findmnt -no UUID -T /swapfile

在此示例中为 a742e8c6-fd89-46d3-8e75-e518121f08cc

2. 找出交换文件的偏移量

sudo filefrag -v /swapfile

复制 physical_offset: 中第一行第一列(0:)的值,不含后面的两个“.”,在此示例中是 27680768 。

3. 编辑 /etc/default/grub

sudo vim /etc/default/grub

在GRUB_CMDLINE_LINUX_DEFAULT这一行,向 splash 后添加以下内容

resume=UUID=第一步中获得的UUID resume_offset=第二步中获得的偏移量

例如在此示例中为

resume=UUID=a742e8c6-fd89-46d3-8e75-e518121f08cc resume_offset=27680768

4. 更新GRUB配置

sudo update-grub

5. 编辑 /etc/initramfs-tools/conf.d/resume

sudo vim /etc/initramfs-tools/conf.d/resume

如果文件存在且有一行以 RESUME 开头,则编辑该行,没有则添加内容,内容如下所示

RESUME=UUID=第一步中获得的UUID resume_offset=第二步中获得的偏移量

在本示例中为

RESUME=UUID=a742e8c6-fd89-46d3-8e75-e518121f08cc resume_offset=27680768

6. 重新生成 initramfs

sudo update-initramfs -c -k all

7. 重启电脑,然后使用以下命令测试

sudo systemctl hibernate

注意

若安装了NVIDIA驱动且安装了CUDA

则需删除 /etc/systemd/system 下的三个文件

```

nvidia-hibernate.service

nvidia-resume.service

nvidia-suspend.service

```

然后执行

```bash

systemctl daemon-reload

```

最后才能成功使用挂起或休眠

和Windows不同的是,若休眠时电脑外接了设备,例如显示器,或连接有外设,下次启动时如果更换了外接设备(显示器或外设等),则有可能启动失败,这时需要按住 alt + Sysrq 键,然后依次在键盘上按下 r e i s u b(即busier倒过来) ,系统就会安全重启。因此建议休眠时先拔掉所有外接设备再休眠,启动时是否外接设备则不影响

8. 为休眠模式添加图标

sudo vim /usr/share/applications/hibernation-mode.desktop

写入以下内容

[Desktop Entry]

Type=Application

Name=Hibernation Mode

GenericName=Hibernation Mode

Comment=Enter Hibernation Mode

NoDisplay=false

Icon=drive-multidisk

Exec=systemctl hibernate

Terminal=true

Categories=System;Utility;Settings;

即可在应用程序菜单看到图标,或在菜单内搜索 Hibernation Mode ,点击即可进入休眠模式

相关推荐

365比分官网 奴才是指什么生肖有几个 奴才是什么生肖数字

奴才是指什么生肖有几个 奴才是什么生肖数字

📅 10-30 👁️ 389
365比分官网 任贤齐,和他忘掉的一段情

任贤齐,和他忘掉的一段情

📅 08-18 👁️ 221
bet3365 王者荣耀系统改动策划——天赋系统

王者荣耀系统改动策划——天赋系统

📅 11-03 👁️ 5405