如何更改 /sys/power/mem_sleep?没有什么可以改变它,到目前为止所有的建议似乎都是错误的?

如何更改 /sys/power/mem_sleep?没有什么可以改变它,到目前为止所有的建议似乎都是错误的?

我无法改变。

好像已经锁上了。

想要置于低电量状态。

s2idle [深]

这是怎么做到的。Google 搜索结果中讨论并非所有可能的路径都能正确更改。

更新

人们说的话通常是错误的:

例如,会发生以下情况:

$ echo s2idle | sudo tee /sys/power/mem_sleep
s2idle
$ cat /sys/power/mem_sleep
[s2idle]

与下面导致 deep! 的示例相比,我的系统是否出了问题???或者这是他们的打字错误?网络上到处都是这样的混乱。

为什么会失败?

echo deep | sudo tee /sys/power/mem_sleep
deep
tee: /sys/power/mem_sleep: Invalid argument

我怀疑人们写的答案会触发一些潜在的问题……但他们不明白那是什么问题,也不知道如何更改它的设置。是 grub 吗?

这似乎相关https://forums.linuxmint.com/viewtopic.php?t=335139

更新

问题似乎出在 BIOS 设置上。将配置电源睡眠状态设置为 Linux!

答案1

(OP 补充):首先确保您的 BIOS->config->power-sleep 状态正确(或无论它叫什么)。它应该设置为 Linux。默认可能是 Windows。如果设置不正确,可能会阻止您设置 [deep]。

/sys/power/mem_sleep 指示将使用的挂起方法。各种方法的可用性取决于系统。

典型的默认值是deep,正如您所示:

doug@s19:~$ cat /sys/power/mem_sleep
s2idle [deep]

含义Suspend-to-RAM是如果mem写入则用来/sys/power/state暂停系统。

通过将其更改为s2idle

doug@s19:~/system-info$ echo s2idle | sudo tee /sys/power/mem_sleep
s2idle
doug@s19:~/system-info$ cat /sys/power/mem_sleep
[s2idle] deep

然后如果写入则将Suspend-To-Idle用来暂停系统。mem/sys/power/state

另一种告诉系统使用哪种挂起方法的方法是通过它/sys/power/state本身。可以列出给定系统的选项:

doug@s19:~$ cat /sys/power/state
freeze mem disk

freeze可用于Suspend-To-Idle,并可mem用于Suspend-to-RAM,具体取决于 中的设置/sys/power/mem_sleep

Suspend-To-Idle会更快地从挂起状态唤醒,但会比 消耗更多电量Suspend-to-RAM。对于我的测试服务器,空闲系统的主电源功率约为 37.8 瓦。Suspend-To-Idle消耗约 29.4 瓦。Suspend-to-RAM消耗约 2.8 瓦。我使用以下命令挂起系统:

doug@s19:~$ echo freeze | sudo tee /sys/power/state
freeze
doug@s19:~$ echo mem | sudo tee /sys/power/state
mem

并按下电源按钮唤醒系统。

参考。

相关内容