我的电脑如何暂停?

试图了解暂停在10.10中是如何工作的。

http://git.webconverger.org/?p=home.git;a=blob;f=.bashrc;h=8ba57b877e31a03c5f0b1675b42f747d81dd31ad;hb=HEAD#l31

我使用alias suspend='sudo /etc/acpi/sleep.sh && sudo alsactl init 0

alsactl位是重新启动我的声卡,有时不会正常挂起。

然后:

/etc/acpi/sleep.sh – > /usr/sbin/pm-suspend – > /usr/lib/pm-utils/bin/pm-action – > /usr/lib/pm-utils/pm-functions

反讽是/usr/lib/pm-utils/bin/pm-action声称是“简单暂停脚本”。

仍然不知道它是如何工作的。 我想我之前直接使用过s2ram

gnome-power-manager工具侦听挂起按钮事件,并生成pm-suspend 。 有关pm-suspend如何操作的详细信息可以在man pm-suspend命令输出中找到。 快速版:

  1. 扫描/etc/pm/config.d以查找定义环境变量的文件。
  2. 使用“suspend”参数按顺序调用/etc/pm/sleep.d/usr/lib/pm-utils/sleep.d中的每个脚本。
  3. 系统通过定义的接口模块进入hibernate状态。 默认情况下,这是内核挂起接口: echo -n "mem" >/sys/power/state 。 请参见/usr/lib/pm-utils/pm-functions ,其中定义了do_suspend
  4. 系统醒来了。
  5. /etc/pm/sleep.d/usr/lib/pm-utils/sleep.d中的每个脚本都以相反的顺序使用“resume”参数调用。

如果你需要在堆栈中添加一个脚本,我建议将它添加到/etc/pm/sleep.d并命名为与其他脚本不冲突的东西,并确保它处理“暂停”/“恢复”论点。

有关调试,请参阅/var/log/pm-suspend.log以及包含有关如何进行测试的更多信息的手册页。