如何切换`/sys/class/backlight`中的选项来解决亮度问题?

Ala*_*chi 3 acpi brightness

操作系统:Ubuntu - 18.04 LTS

我的目录中有 2 个符号链接/sys/class/backlight/

acpi_video0 -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/backlight/acpi_video0/
nv_backlight -> ../../devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0/card0-LVDS-1/nv_backlight/
Run Code Online (Sandbox Code Playgroud)

亮度热键可更改 的值acpi_video0/brightness。但这实际上并没有改变显示屏的亮度。

但是,手动更改该值nv_backlight/brightness实际上会改变显示屏的亮度。

因此,将热键链接到nv_backlight而不是acpi_video0可以解决我的问题,但我不知道该怎么做。

编辑:操作Fn键调节亮度(热键)时,屏幕上会出现弹出滑块进度条。

编辑:

  1. 输入:

    cat /sys/class/backlight/nv_backlight/max_brightness
    
    Run Code Online (Sandbox Code Playgroud)

    输出:

    100
    
    Run Code Online (Sandbox Code Playgroud)
  2. 输入:

    cat /sys/class/backlight/nv_backlight/actual_brightness
    
    Run Code Online (Sandbox Code Playgroud)

    输出(这个值自动更改为相同的值,我手动输入/sys/class/backlight/nv_backlight/brightness):

    10
    
    Run Code Online (Sandbox Code Playgroud)
  3. 输入:

    cat /sys/class/backlight/acpi_video0/max_brightness
    
    Run Code Online (Sandbox Code Playgroud)

    输出:

    15
    
    Run Code Online (Sandbox Code Playgroud)

Win*_*nix 5

bash脚本redirect-brightness

您的问题是增加/减少亮度的功能键正在更新/sys/class/backlight/acpi_video0/brightness而不是/sys/class/backlight/nv_backlight/brightness

最初的请求是拦截功能键并用它们来控制nv_backlight驱动程序。这样做的问题是:

  • 棘手的udev脚本
  • 没有弹出通知滑块显示亮度,无需复杂的 Python 脚本。

解决方案是使用inotify来监视acpi_video0. 然后计算亮度百分比并将相同的百分比应用于nv_backlight

在下面的 bash 脚本中您需要设置:

WatchDriver="/sys/class/backlight/acpi_video0/brightness"
PatchDriver="/sys/class/backlight/nv_backlight/brightness"
Run Code Online (Sandbox Code Playgroud)

将脚本放入/usr/local/bin并使用以下命令使其可执行:

chmod a+x /usr/local/bin/redirect-brightness
Run Code Online (Sandbox Code Playgroud)

首先使用命令行运行脚本

redirect-brightness -l
Run Code Online (Sandbox Code Playgroud)

如果出现问题,请使用以下命令检查日志文件:

cat /tmp/redirect-brightness.log
Run Code Online (Sandbox Code Playgroud)

如果一切正常,请添加redirect-brightness到您的启动应用程序中。

redirect-brightnessbash脚本

WatchDriver="/sys/class/backlight/acpi_video0/brightness"
PatchDriver="/sys/class/backlight/nv_backlight/brightness"
Run Code Online (Sandbox Code Playgroud)

原始答案 2018 年 6 月 11 日。

正在进行中的工作答案

有很多 nVidia 用户在 Ubuntu 18.04 中遇到类似问题:


编写脚本之前

我可以编写一个脚本来模拟对 /acpi_video 的更改并填充 /nv_backlight 但在尝试此操作之前:

  • 编辑/etc/default/grub
  • 寻找quiet splash
  • 在飞溅后面添加:acpi_backlight=vendor
  • 保存文件
  • 跑步sudo update-grub

根据这个答案,它应该适合你:Xubuntu 18.04: make Fn Brightness Keys work with /sys/class/backlight/nv_backlight/


韦兰

亮度在 Wayland 下不起作用。确保您没有使用它。请参阅:无法使用按钮或滑块调整笔记本电脑屏幕的亮度。编辑