挂起时显示屏亮度大幅提升

挂起时显示屏亮度大幅提升

标题说明了一切。当我锁定时,它保持不变,但如果我暂停,我会说它的亮度会 +100% 或者我不知道该怎么称呼它。如果我将亮度设置为 0,我会看到灰色屏幕,如果我将其设置为 1,我会看到具有大量白色色调的屏幕

顺便说一下,在启动时它也能完美运行。只有在挂起时它才会崩溃

答案1

我有一台戴尔 XPS 13,几年前就遇到过这个问题。解决办法是编写一个脚本,在睡眠或休眠时保存当前亮度设置,然后在唤醒时重新应用该亮度。

您可以按照以下方法执行相同操作:

  1. 打开终端(如果尚未打开)

  2. /etc/pm/sleep.d使用root您喜欢的文本编辑器创建一个文件:

    sudo vi /etc/pm/sleep.d/10_brightness_control
    
  3. 粘贴以下内容:

    #!/bin/bash
    # Description: Save the brightness before sleeping and set after waking
    
    case "${1}" in
        hibernate|sleep) before_suspend=$(cat /sys/class/backlight/*/brightness)
    ;;
        resume|thaw) sleep 0.33 && echo "$before_suspend" > /sys/class/backlight/*/brightness
    ;;
    esac
    

  4. 将文件设置为可执行文件:

    sudo chmod +x /etc/pm/sleep.d/10_brightness_control
    

这就是全部内容。现在,当系统进入休眠或睡眠状态时,亮度级别将被捕获并存储在 中$before_suspend。当系统从此状态唤醒时,该值将在 0.33 秒后写入brightness下存在的所有文件/sys/class/backlight/*(大多数计算机只有一个)。延迟考虑到此脚本运行的情况桌面环境设置了亮度级别。因此,您可能会在一瞬间看到刺眼的光线,然后才能看到一些可读的内容。

此方法已在 Ubuntu Desktop 18.04、Ubuntu MATE 18.04、Ubuntu MATE 18.10、Ubuntu Desktop 19.10 和 Ubuntu Desktop 20.04 上测试并确认有效。

文件注释10_brightness_control

  • 该文件可以任意命名,但最好在前面有两位数字10
  • 文件必须位于/etc/pm/sleep.d/
  • 该文件必须归root
    sudo chown root:root /etc/pm/sleep.d/10_brightness_control
    
  • 该文件必须是可执行的
    sudo chmod +x /etc/pm/sleep.d/10_brightness_control
    

希望这能满足您的需求

答案2

我做了一些测试,发现@user1091774 的答案部分正确。我想以评论的形式分享这个,但声誉不够。

在 ubuntu 22.04 上,你需要保存这样的脚本/lib/systemd/system-sleep(来自这里)并使其可执行。您还需要更改大小写,因为 sleep 将具有邮政代替睡觉解冻。您不需要将值保存在变量中,只需读取并将相同的值保存到文件中即可完成工作。

这个脚本对我有用:

#!/bin/sh
# Description: Set brightness upon awakening
case "$1" in
    post)
        sleep 0.33 && cat /sys/class/backlight/nv_backlight/brightness | tee /sys/class/backlight/nv_backlight/brightness
        ;;
esac

相关内容