如果您休眠并且没有足够的可用交换,则会显示一条消息后整个桌面环境已关闭。
因此只能重新启动。
我可以通过脚本(或其他任何方式)检查是否有足够的交换空间前都关门了?
谢谢
答案1
您在这里看到的问题是内核必须分配足够的可用交换页来写入休眠映像,这也包括一些元数据开销。不幸的是,内核只能在使进程静止后才能确定需要写入多少页进行交换,而这在休眠过程中已经很晚了。理论上,如果没有足够的可用页面,休眠应该会退出并返回到正在运行的系统,所以您似乎需要重新启动的事实在我看来就像是一个错误。
根据经验法则,交换大小通常为可用 RAM 大小的 2 倍左右,因此休眠时耗尽交换空间不会因为缺少可用交换空间而失败;然而,由于可能已经有页面被换出,并且写出休眠映像所需的元数据开销很小,因此情况会稍微复杂一些。