什么混合动力暂停?
那么什么曾经发生过混合挂起,它会暂停到RAM和磁盘? 几年前它有点热,但它似乎被放弃了。 有没有办法在最近的Ubuntu版本中设置它?
有一个名为pm-is-supported
程序可用于检查系统的挂起function。
在我的系统上有结果(0表示支持,1表示不支持):
$ pm-is-supported --suspend ; echo $? 0 $ pm-is-supported --hibernate ; echo $? 0 $ pm-is-supported --suspend-hybrid ; echo $? 1
pm-is-supported
的联机帮助页表明s2both支持混合暂停。 我已经安装了s2both,可以在uswsusp
包中找到,但它仍然报告不支持混合挂起。 我有一个预感,它需要重新启动,因为它更新了initrd映像。 我要重新启动并报告回来。 祝我好运 。
更新:运行sudo s2both
将快照写入磁盘并正确挂起到RAM,但是当我按下一个键以恢复系统重启(并且没有从磁盘恢复快照)。
我认为ubuntu中的uswsusp
包有问题。 splashy
包(由uswsusp
)与lsb-base
存在文件冲突,自Jaunty以来一直保持不固定( https://bugs.launchpad.net/ubuntu/+source/splashy/+bug/328089 )
尝试运行sudo s2both
或sudo pm-suspend-hybrid
,看看它是否适用于您的系统。
您可以按照以下问题的答案启用混合暂停:
- 我如何默认使用pm-suspend-hybrid而不是pm-suspend?
这个问题在Google中经常出现,我觉得值得一试。 Li完美地解释了混合悬挂。 但是,s2both需要uswsusp(因此不使用in-kernel suspend),pm-hsuspend-hybrid做错了,因为它没有维护[1]。
以下是如何无缝启用混合挂起:
- 覆盖“暂停”调用以在pm-utils中执行“hybrid_suspend”。
%cat /etc/pm/config.d/00-use-suspend-hybrid #始终使用suspend_hybrid而不是暂停 if [“$ METHOD”=“暂停”]; 然后 METHOD = suspend_hybrid 科幻
- 备份/ usr / lib / pm-utils / pm-functions
- 从这里获取补丁: https : //bugs.freedesktop.org/attachment.cgi?id = 68712
- 此补丁启用混合挂起(如果可用)(即在内核3.6+上)
- 使用’patch -p0’应用它,或者如果失败则手动合并它
这个方法适用于我的Sony Vaio SVS。
PS:如果将来删除文件,请在此处重新生成补丁:
diff --git a / pm / pm-functions.in b / pm / pm-functions.in --- a / pm / pm-functions.in +++ b / pm / pm-functions.in @@ -316,8 +316,28 @@ if [-z“$ HIBERNATE_MODULE”] && \ { [-n“$ {HIBERNATE_MODE}”] && \ grep -qw“$ {HIBERNATE_MODE}”/ sys / power / disk && \ + HIBERNATE_MODE_SAVE = $(cat / sys / power / disk)&& \ + HIBERNATE_MODE_SAVE =“$ {HIBERNATE_MODE_SAVE ## * [}”&& \ + HIBERNATE_MODE_SAVE =“$ {HIBERNATE_MODE_SAVE %%] *}”&& \ echo -n“$ {HIBERNATE_MODE}”> / sys / power / disk echo -n“disk”> / sys / power / state + RET = $? + echo -n“$ HIBERNATE_MODE_SAVE”> / sys / power / disk +返回“$ RET” +} +网络 + +#用于支持暂停两者的内核(即混合暂停) +#自内核3.6 +如果[-z“$ SUSPEND_HYBRID_MODULE”] && \ + [-f / sys / power / disk] && \ + grep -q disk / sys / power / state && \ + grep -q suspend / sys / power / disk; 然后 + SUSPEND_HYBRID_MODULE =“内核” + do_suspend_hybrid() + { + HIBERNATE_MODE =“暂停” + do_hibernate } 科幻
资料来源:
- https://bugzilla.redhat.com/show_bug.cgi?id=843657
- https://bugs.freedesktop.org/show_bug.cgi?id=52572
[1]:pm-utils比内核3.6+中的内核混合暂停更早。 pm-suspend-hybrid实际上做的是默认情况下让你的机器处于睡眠模式15分钟,然后hibernate。