nvidia背光亮度问题

问题

当我按下Fn +增加/减少亮度时,Unity显示控制,但没有任何反应。 在X服务器运行时,控制台亮度也不起作用。

检查解决方案

我在谷歌尝试过这个问题的所有可能的解决方案,没有任何作用:

  1. 在grub中写acpi_backlight
  2. 使用apt purge nvidia重新安装驱动程序*
  3. 在xorg.conf中写“EnableBrightnessControl = 1”
  4. 安装nvidia-375.66,nvidia-378.13,381.22,384.47
  5. “xbacklight -set X”不起作用
  6. 改变/ sys / class /背光/亮度
  7. 将linux内核从4.8更新到4.10和4.12
  8. 从旧矩阵中取代EDID(它会破坏一切)
  9. setpci -v -H1 -s 00:01.0 3e.W = 0然后使用Fn +键更改背光。
  10. xrandr – 输出DP-0 – 亮度0.5 —糟糕的解决方案

我的系统和情况

我以前在笔记本电脑上使用过N173HHE-G32显示矩阵,一切都还可以。 但是今天我把它换成了B173HAN01.2,这个问题已经开始了。 在Windows 10上,我通过在官方MSI网站上重新安装nvidia-376上的驱动程序解决了这个问题。

所以,我可以看到下一个序列:在笔记本电脑启动亮度最大,然后它是最小(和工作),而“initramfs …”文本显示在控制台中。 并且在X服务器启动后亮度再次最大(损坏)。 当X服务器停止亮度再次工作!

MSI GT73VR 7RF, Ubuntu 16.04.2 LTS, NVidia GeForce GTX1080, B173HAN01.2 display matrix uname -a 4.8.0-58-generic #63~16.04.1-Ubuntu SMP Mon Jun 26 18:08:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux lspci | grep -i vga 01:00.0 VGA compatible controller: NVIDIA Corporation Device 1be0 (rev a1) 

然而!

但是,当我使用nvidia-378时,它的工作原理 ! 不幸的是,在Unity界面中挂起模式后,378有一个严重的错误:(((

请帮助,我的眼睛是血液(对他们来说非常明亮),我不知道该怎么办……

最终的参考似乎是在Arch Linux中 ,这是一个我已经多次解决困难问题的网站。

内核参数

查看cat /proc/cmdline ,没有传递额外的内核参数。 以上链接指出:

有时,由于不同的主板实现和ACPI怪癖,ACPI无法正常工作。 这包括一些具有双显卡的笔记本电脑(例如带有Intel / AMD集成GPU的Nvidia / Radeon专用GPU)。 在Nvidia Optimus笔记本电脑上,内核参数nomodeset会干扰调整背光的能力。 此外,ACPI有时需要注册自己的acpi_video0 backlight即使已经存在(例如intel_backlight ),这可以通过添加以下内核参数之一来完成:

 acpi_backlight=video acpi_backlight=vendor acpi_backlight=native 

如果您发现更改acpi_video0背光并未实际更改亮度,则可能需要使用acpi_backlight=none

尝试grub内核参数线上的每个acpi_backlight=xxxx选项

xbacklight不起作用时

您已经尝试过xbacklight ,上面的链接解决了这个问题:

在某些系统上,键盘上的亮度热键正确修改了/sys/class/backlight/acpi_video0/actual_brightness中的acpi接口的值( 正如我们在注释中所尝试的那样 ),但屏幕亮度没有改变。 桌面环境中的 Brigthness applet(即Ubuntu亮度设置滑块 )也可能显示无效的更改。

如果您已经测试了推荐的内核参数并且只有xbacklight可以工作,那么您可能会遇到BIOS和内核驱动程序之间的不兼容问题。

在这种情况下,唯一的解决方案是等待BIOS或GPU驱动程序制造商的修复。

解决方法是每当/sys/class/backlight/acpi_video0/actual_brightness发生变化时,使用inotify内核api来触发xbacklight

首先安装inotify-tools。 然后围绕inotify创建一个脚本,该脚本将在每次启动时或通过自动启动时启动。

下面是您需要创建的脚本: /usr/local/bin/xbacklightmon

 #!/bin/sh path=/sys/class/backlight/acpi_video0 luminance() { read -r level < "$path"/actual_brightness factor=$((100 / max)) printf '%d\n' "$((level * factor))" } read -r max < "$path"/max_brightness xbacklight -set "$(luminance)" inotifywait -me modify --format '' "$path"/actual_brightness | while read; do xbacklight -set "$(luminance)" done 

上面的链接还有很多,但这些步骤是一个很好的起点。


专用论坛

有关其他支持,有专门的Linux Graphics论坛:

  • Phoronix Linux / AMD / Nvidia支持许多Ubuntu用户
  • Nvidia Linux开发者论坛(有许多Ubuntu特定主题)

克隆此repo并将脚本backlight.sh粘贴到/bin 。 然后使其可执行,然后打开根终端并执行以下命令。

sudo backlight.sh "brightness-level-number"

克隆存储库,

git clone https://github.com/el-beth/backlight.sh.git

您可以在终端中安装命令xbacklight的包:

sudo apt-get install –reinstall xbacklight

安装后,您可以使用命令xbacklight,如下所示:

xbacklight -inc 20#将背光增加20%

xbacklight -dec 30#减少30%

xbacklight -set 80#设置为最大值的80%

xbacklight -get#获取当前级别

命令xbacklight应该以这种方式工作。

嗨,我很抱歉,如果这是聪明的人已经排除的东西,因为我对命令行很熟悉,但重新安装后我遇到了这个问题,所有上述解决方案对我都不起作用(MSI pe706QE nvidia 960m )。

我正在编辑/etc/default/grub

 gksudo 'insert editor of choice not in quotes' /etc/default/grub 

并注意到nomodeset仍然位于文件的底部(我不记得永久添加它)并将其删除。

保存文件并运行:

 sudo update-grub 

所有用快捷键再次工作#noobie失败希望这可以帮助某人。

我有索尼VPCEH笔记本,我有同样的问题。 我尝试了这个对我有用的解决方案: http : //ubuntuforums.org/showthread.php? t = 2221452#6简要说明:使用root权限,创建文件/usr/share/X11/xorg.conf.d/20- nvidia.conf具有以下内容

部分“设备”标识符“Device0”驱动程序“nvidia”VendorName“NVIDIA Corporation”BoardName“GeForce 410M”选项“RegistryDwords”“EnableBrightnessControl = 1”EndSection

退出并重新登录进行测试。 它轻轻地补充说:“如果出现问题,只需删除该文件并重启即可恢复系统。” 但我不需要这样的补充。 注销并登录后亮度控制再次开始工作。 我希望它也能帮到你……

或者这个用ubuntu 16.04在我的笔记本电脑索尼VPCEJ2C5E下工作但是用nvidia 378.13我暂时没有使用390.25驱动程序。

我能够在Ubuntu 12.04上的联想W530上运行亮度键。 这些天X自动配置自己,因此创建xorg.conf文件可能会使您的系统不灵活。 相反,您可以在/usr/share/X11/xorg.conf.d/中向文件添加一个部分,X将在其自动生成的配置中包含该部分。 因此,要使屏幕亮度键与Nvidia图形卡配合使用,请在xorg.conf.d目录中创建一个文件,例如:sudo gedit /usr/share/X11/xorg.conf.d/10-nvidia-brightness.conf将以下内容粘贴到文件中:

部分“设备”标识符“Device0”驱动程序“nvidia”VendorName“NVIDIA Corporation”BoardName“Quadro K1000M”选项“RegistryDwords”“EnableBrightnessControl = 1”EndSection

注销并重新登录或重新启动,您的亮度键现在应该可以正常工作!

在此处输入图像描述

根据wineunuuchs2unix的要求,我在这里重新回答了类似的问题 。

试试acpi_osi=

在几天前升级到Bionic时,我遇到了类似的问题(我有一个NVIDIA GeForce GTX 1060 Mobile,但对于我/sys/class/backlight显示为空)。

在完成背光调试过程中 ,我通过内核参数发现了一种解决方法:

  • 在“软件和更新”→“其他驱动程序”中,确保选择了nvidia-driver-396 (或任何元数据包是最新的; 396是编写本文时最新的)。
  • 通过运行命令sudo nano /etc/default/grub编辑sudo nano /etc/default/grub (可选择用您喜欢的编辑器替换nano )。
  • 找到设置GRUB_CMDLINE_LINUX_DEFAULT的行,并在引号内的末尾添加acpi_osi= 。 在大多数系统上,这将为您提供一条读取GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi="
  • 保存并退出编辑器。
  • 运行命令sudo update-grub并重启。

(如果这些步骤不起作用,请通过重复该过程来恢复设置,但在编辑GRUB配置时删除acpi_osi= 。)

另一种解决方法,如果它是一个选项,是切换到主线内核 。 特别是,我没有看到主线内核版本4.17下的问题。

( 这里报告了 Bug。)