笔记本ubuntu20.04屏幕亮度问题

笔者的笔记本是联想R7000,使用独显直连模式
刚开始安装和ubuntu,显卡驱动默认使用的是nouveau,此时是可以通过系统任务栏的亮度控制条控制亮度的
安装n卡最新驱动nvidia-driver-440后,亮度控制条无法控制屏幕亮度了,键盘的Fn+F5也没有反应

解决办法:

  1. 修改grub
#sudo vi /etc/default/grub

修改GRUB_CMDLINE_LINUX字段
修改前:
GRUB_CMDLINE_LINUX=""
修改后:
GRUB_CMDLINE_LINUX="acpi_backlight=vendor"

  1. 更新grub
# sudo update-grub
  1. 添加n卡背光设备
# sudo vi /usr/share/X11/xorg.conf.d/10-nvidia.conf

添加如下:

Section "Device"
    Identifier "Device0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    Option "RegistryDwords" "EnableBrightnessControl=1"
    Option "NoLogo" "True"
EndSection
  1. 禁止加载ideapad_laptop驱动
# vi /etc/modprobe.d/blacklist.conf

在末尾添加一行

blacklist ideapad_laptop
  1. 重启系统

此时再进入系统就可以控制屏幕亮度了,但是每次开机屏幕总是最亮的
systemd有一个systemd-backlight服务会控制屏幕背光
笔者通过修改其配置,实现了开机默认亮度控制

systemd-backlight的配置文件位于/var/lib/systemd/backlight
默认有以下几个文件:
pci-0000:00:14.3-platform-VPC2004:00:backlight:ideapad
pci-0000:01:00.0:backlight:acpi_video0
pci-0000:01:00.0:backlight:nv_backlight
每个文件的数值代表了屏幕亮度配置。
不同设备的亮度范围是不同的,比如idapad的亮度范围是1-16,nv_backlight的亮度范围是1-100
最大值可通过查看/sys/class/backlight/{device}/max_brightness获取

创建pci-0000:01:00.0:backlight:nvidia_0,
echo 60|sudo tee pci-0000:01:00.0:backlight:nvidia_0
重启系统登录,可以看到屏幕亮度不再是最亮了

posted on 2020-06-09 16:19  zlyang  阅读(7399)  评论(2编辑  收藏  举报

导航