仅当笔记本电脑已插入以太网时才禁用关闭待机功能

仅当笔记本电脑已插入以太网时才禁用关闭待机功能

我知道你可以关闭笔记本电脑盖时禁用待机功能,但是如果插入以太网,是否可以不让它处于待机状态?

因此基本上,无论是否使用电池供电,我都需要它像这样工作:

If laptop shell closed
    If ethernet not plugged in
        Go to standby
    Else
        Don't go to standby, ever

有办法实现这个吗?

答案1

好的,根据其他答案的一些信息,您可以尝试这种未经测试的方法:

捕捉盖子关闭和打开事件

  • 当盖子打开或关闭时您想要调用的脚本必须存储
    在中/etc/acpi/lid.sh

  • 然后必须创建正确的文件/etc/acpi/events/lm_lid,其内容如下:

    event=button/lid.*
    action=/etc/acpi/lid.sh
    
  • 重启系统以使此操作生效。或者使用以下命令重启 ACPI 即可

    sudo /etc/init.d/acpid restart
    

https://unix.stackexchange.com/questions/252002/help-testing-special-file-in-sys-class-net如何从命令行暂停/休眠? 脚本/etc/acpi/lid.sh将如下所示(将 yournetworkcardname 更改为您的网卡名称。使用ifconfig以找到它)。您可以选择挂起或休眠。

#!/bin/bash
if [ "$(head -c1 /sys/class/net/yournetworkcardname/carrier)" -eq 0 ]; then
    systemctl suspend
fi

使用 测试脚本bash -x /etc/acpi/lid.sh并确保其正常工作。您可能需要添加以下内容才能以 sudo 身份运行脚本而无需输入密码,来自https://unix.stackexchange.com/questions/18830/how-to-run-a-specific-program-as-root-without-a-password-prompt

myusername ALL = (root) NOPASSWD: /etc/acpi/lid.sh

也许您还必须使用 sudo 在操作中调用该脚本。

相关内容