Ubuntu使用独显/nvidia显卡无法调节亮度

因为驱动兼容性问题,无法直接使用开源的显卡驱动,只能使用闭源的Nvidia驱动,带来的后果是无法调节屏幕亮度。解决办法如下:

方法1:使用Brightness-controller(简单,但治标不治本)

sudo add-apt-repository ppa:apandada1/brightness-controller
sudo apt-get update
sudo apt-get install brightness-controller-simple

方法2:调整系统配置实现亮度控制(推荐)

  • 确保已安装Nvidia独显驱动

可以在Ubuntu的Softwares center安装,也可以用命令行安装。

偶然发现/sys/class/backlight为空(正常应该是有内容的),继续执行下面步骤。

  • 修改/etc/default/grub

ps: 我使用的是Sublime编辑器,所以是subl,如果你习惯gedit,请对应地改为gedit

sudo subl /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

修改为:

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash acpi_osi=Linux”
GRUB_CMDLINE_LINUX="acpi_backlight=vendor“

保存,然后update-grub

sudo update-grub

重启后发现还是无法调节亮度,但是按快捷键会出现亮度的图标。

  • 修改10-nvidia.conf的配置
sudo subl /usr/share/X11/xorg.conf.d/10-nvidia.conf

Option "RegistryDwords" "EnableBrightnessControl=1"加进去,例如我的修改后为:

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration"
    Option "RegistryDwords" "EnableBrightnessControl=1"
    ModulePath "/usr/lib/x86_64-linux-gnu/nvidia/xorg"
EndSection
  • 修改/etc/modprobe.d/blacklist.conf,禁用*labtop
sudo gedit /etc/modprobe.d/blacklist.conf

在文件最后添加:

blacklist dell-laptop

不同品牌的关键字不一样,我的是dell,对应dell-labtop,部分联想是ideapad_laptop,不同品牌可以使用sudo find /sys/ -type f -iname '*brightness*' | grep labtop查看对应的关键字(看到labtop字眼就是了)。

最后更新update-initramfs

sudo update-initramfs -u

然后重启电脑。

  • 如果还是不行,执行一下步骤
sudo subl /etc/initramfs-tools/modules

在最后添加以下内容:

nvidia
nvidia-drm
nvidia-modeset

最后更新update-initramfs,然后重启电脑,试下调节亮度快捷键,一切ok。

sudo update-initramfs -u
  • 后悔药

如果使用上面的任一步骤后,开机卡在任一界面,就是配置有问题,使用以下步骤恢复修改的配置文件:

开机按Esc,然后选择Adavance ...那一项(第二项?),然后选择...(recovery mode),再选择...root,会出现命令行界面,使用vim把修改的文件恢复,然后执行sudo update-grub或者sudo update-initramfs -u,最后reboot重启即可。

参考:

猜你喜欢

转载自blog.csdn.net/lyh458/article/details/124658364