所以我尝试使用sudo systemctl 休眠,反过来它说“无法通过 logind 进入系统休眠状态:没有足够的交换空间进行休眠”。
我之前已经尝试过这个,所以在使用休眠之前,我设置了不同的交换文件来容纳我的笔记本电脑的 RAM(8G),总的来说,我的总交换空间(来自 free -h)是总共使用的空闲共享 buff/cache 内存:7.7Gi 2.7Gi 4.4Gi 135Mi 741Mi
交换:16Gi 1.4Gi 14Gi
那么交换文件和交换分区之间有什么区别吗?我还可以进行其他设置以正确休眠吗?
附注:我尝试安装 pm-utils 并使用 pm-hibernate,系统挂起片刻,屏幕关闭,但随后它会重新打开并恢复正常(可能也是因为缺少交换空间)。
是不是我忘记了某个步骤或者其他什么?
答案1
休眠需要单独分区上的交换空间。虽然它也可以在交换文件上工作,但交换文件必须是连续的,并且必须指定指示文件物理位置的偏移量,因此设置更为复杂。
如果您想尝试休眠,请先创建交换分区。交换分区的大小至少应等于计算机 RAM 的大小:休眠是指在系统关闭之前将 RAM 的所有内容写入 SWAP 空间;重新启动时,操作系统会将内容从 SWAP 空间再次读入 RAM。
请注意,即使您设置了适当的 SWAP 空间,休眠功能也可能无法在您的计算机上正常工作。这是因为计算机制造商往往不会记录他们如何实施电源管理。因此,休眠功能在很多硬件上都无法正常工作。