如何在16.04.1中激活hibernate? (systemd)

我在联想T450上全新安装了16.04.1,在Ubuntu上暂停/hibernate时效果一直很好(我之前使用的版本是14.04.5)。 在此安装中,交换比RAM大得多。

正如我现在习惯的那样,在安装之后我试图继续进行通常的hacknation激活。 然而,这次事情似乎有所不同,因为sudo pm-hibernate似乎没有做任何事情。

据我所知,现在ubuntu已切换到systemd,正确的命令将是systemctl hibernate ,它返回

  Failed to hibernate system via logind: Sleep verb not supported 

我尝试了这里提到的解决方案,但它们主要是为了重新启用pm-hibernate并使其成为注销菜单中的一个条目。 我还看到一个可能的解决方案是安装Tuxonice内核,但没有尝试,因为我不是非常热衷于篡改内核,特别是使用PPA内核。

那么,有没有办法在最后一个基于systemd的Ubuntu版本上重新激活hibernate? 优选地使用systemd,并避免潜在的系统破坏性攻击。 或者我只是等待并希望直到下次更新?

我终于能够在Fedora的一些主题之后解决我自己的问题了(他们刚刚转向systemd所以那里有更多的材料)。

事实certificate我已经启用了安全启动(我记得在16.04安装过程中被问到这个问题,而且我没有仔细考虑它就保持开启状态)这导致cat /sys/power/disk的输出为:

  [disabled] 

确实不是一个很好的迹象。 所以我重新启动并在我的BIOS设置中搜索,禁用安全启动。 现在cat /sys/power/disk让我:

  [platform] shutdown reboot suspend 

看起来更好。 确实调用systemctl hibernate导致成功的hibernate/解冻序列。

此外,hibernate的选项现在显示在图形界面中,而不需要任何黑客攻击(至少在我的计算机上)。

当您的交换太小而无法容纳RAM内容时(例如,在设置操作系统后向计算机添加了更多RAM)时,也会发生这种情况。

例如在htop检查,然后Mem号应该<= Swp号。

请参阅https://github.com/systemd/systemd/issues/6729