筆者的筆記本是聯想R7000,使用獨顯直連模式
剛開始安裝和ubuntu,顯卡驅動默認使用的是nouveau,此時是可以通過系統任務欄的亮度控制條控制亮度的
安裝n卡最新驅動nvidia-driver-440后,亮度控制條無法控制屏幕亮度了,鍵盤的Fn+F5也沒有反應
解決辦法:
- 修改grub
#sudo vi /etc/default/grub
修改GRUB_CMDLINE_LINUX字段
修改前:
GRUB_CMDLINE_LINUX=""
修改后:
GRUB_CMDLINE_LINUX="acpi_backlight=vendor"
- 更新grub
# sudo update-grub
- 添加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
- 禁止加載ideapad_laptop驅動
# vi /etc/modprobe.d/blacklist.conf
在末尾添加一行
blacklist ideapad_laptop
- 重啟系統
此時再進入系統就可以控制屏幕亮度了,但是每次開機屏幕總是最亮的
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
重啟系統登錄,可以看到屏幕亮度不再是最亮了