在 Windows 上,可以在不使用任何交换的情况下使用休眠。
我想知道这在 Linux 上是否可行?
因为在我的 Debian 11 上,我在 /etc/default/grub 中找到了这一行
GRUB_CMDLINE_LINUX_DEFAULT="... resume=/dev/mapper/luks-4205519b-f3fe-468f-b05e-44f25f6882a4"
如您所见,“resume=”选项指定用于休眠的交换分区。
现在,如果我删除这个交换分区(以禁用交换),我要在 /etc/default/grub 中写入什么?
是否可以像在 Windows 上一样使用休眠文件?
因为我有 32GB RAM,如果我只将 32GB 交换分区用于休眠,那就是浪费空间。
在 Linux 上,如果没有活动交换就无法休眠,特别是,休眠时必须为休眠启用任何要用于休眠的设备或文件。
您可以休眠到一个文件,至少在某些文件系统上是这样。该
resume
参数需要指向保存文件的设备,并且您需要添加一个resume_offset
给文件的偏移量(您可以使用确定filefrag
)。您可以要求内核通过减少 swappiness 值来避免使用 swap
vm.swappiness
。有关如何设置的说明,请参阅如何设置和理解 fs.notify.max_user_watches。