挂起/恢复时如何运行脚本?-索尼VAIO Ubuntu 12.04


12

问题:在电源菜单上选择暂停选项时,如何分配要运行的脚本?

上下文:
我有一台带有AMD Radeon显卡的Sony VAIO笔记本电脑。我希望能够禁用/启用独立显卡。我这样做没有问题,但是在暂停和从暂停恢复时会引起问题。

从暂停状态恢复会话(禁用离散DPU)后,风扇将无法控制地旋转,我想做的是编辑暂停脚本或将新脚本分配给电源菜单上的暂停选项。这样一来,我可以在挂起之前重新启用GPU。 电源菜单

编辑: 经过一些研究,我认为这与文件有关/etc/pm/sleep.d/

如果我在其中放置自定义脚本,那么在挂起和从挂起恢复运行时会运行该脚本吗?

如何在脚本中区分挂起/恢复?

Answers:


16

你是对的。您必须编写一个脚本并将其保存到/lib/systemd/system-sleep/(自2015年起,systemd开始处理/etc/pm/sleep.d/)。挂起和恢复之间的差异作为脚本的参数给出:

#!/bin/bash

case "$1" in
    suspend)
        # executed on suspend
        ;;
    resume) 
        # executed on resume
        ;;
    *)
        ;;
esac

如果您还想使其进入休眠状态,则参数为hibernatethaw


我在其他脚本中已经看到了这一点,并且想知道此类脚本的具体要求。谢谢您:)
danielcooperxyz

嗨,您可以在运行ubuntu 14.04的Dell 5570上尝试此操作,以使其能够打开触摸板(如果在挂起之前已关闭的话)。由于某些原因,命令 tp_id=)xinput list | grep -i touchpad | awk '{ print $7 }' | sed 's/id=//'()没有返回ID,而该命令确实可以从命令行使用。您能看到没有理由吗?为了其他目的,您的脚本效果很好。谢谢!
Leo Simon

抱歉,在先前的评论中,我尝试将反引号放入脚本片段中,但是minimarkdown语言击败了我。()被反引号取代
Leo Simon

@LeoSimon嗨,Leo,这些评论不是讨论此类后续问题的正确位置。我建议你问一个全新的问题。这样,有更多的人会看到它,并能够帮助你:-)
安德烈Stannek

2
您可能需要使用/lib/systemd/system-sleep/代替。
SimonT
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.