云网牛站
所在位置:首页 > Linux教程 > 在Deepin系统中安装闭源显卡驱动后屏幕亮度无法调节的解决

在Deepin系统中安装闭源显卡驱动后屏幕亮度无法调节的解决

2021-03-03 15:45:53作者:deepinuser17稿源:深度站

以下介绍的是在深度Deepin、UOS 20系统中解决屏幕亮度无法调节问题的两种方法:一是给Linux内核添加参数,二是使用X window的工具解决问题。

 

前言

不少深度Deepin用户遇到了显示屏幕亮度初始设为最大,且无法调节的问题,我也遇到了这个问题,现在分享成功的解决经验。

这个问题的根源在于Linux内核尚不能完全支持OLED或高分显示屏,这个问题也许会随着内核的改进最终得到解决,但当下需要通过其它方法解决。

这个问题一般发生在闭源显卡驱动的情况下,开源显卡驱动下亮度可以正常调节(同一台机器试验过)。如果机器使用开源显卡驱动时没有任何问题,使用开源驱动是最好的选择。这避免了安装,切换闭源显卡驱动的麻烦和可能因切换而产生的问题。所以闭源显卡驱动不一定就是最好的方案。

如果机器确实出现随机卡顿、锁死,或应用程序需要高性能的显卡功能,安装闭源显卡驱动是一个必要的选择。参考在Deepin 20系统下选择合适的NVIDIA闭源驱动版本

恢复屏幕亮度调节的方法有多种,以下介绍两种有效的解决方法。

 

方法一

给Linux内核添加参数,例如"acpi_backlight=vendor",或"acpi_backlight=native",这个方法最简单,需要改动的地方最少。

修改/etc/default/grub,添加"acpi_backlight=vendor",或"acpi_backlight=native"。例如:

# Written by com.deepin.daemon.Grub2

DEEPIN_GFXMODE_ADJUSTED=1

GRUB_BACKGROUND="/boot/grub/themes/deepin/background.jpg"

GRUB_CMDLINE_LINUX=""

GRUB_CMDLINE_LINUX_DEFAULT="splash quiet acpi_backlight=vendor "

运行以下命令更新/boot/grub/grub.cfg:

sudo update-grub

重启机器。

重启以后,亮度就可以正常调节了。但是有一个缺点,最大亮度时屏幕也比较暗,而且最低亮度时,屏幕完全黑暗。所以这个方法可用,但不是最佳的。

 

方法二

使用X window的工具xrandr来解决这个问题。在网上找到了两个方法。

oled-linux项目地址:https://github.com/lawleagle/oled-linux

ICC Brightness项目地址:https://github.com/udifuchs/icc-brightness

ICC Brightness主要是在联想笔记本上测试的,这个方法也许适用其它的笔记本。

这里主要测试了oled-linux方法。对oled-linux.sh的脚本进行了修改,修改的地方是去除了跟据白天,黑夜设置屏幕偏光度。另外让脚本适用于各个背光设备,比如acpi_video0、 intel_backlight等等。这个方法最低屏幕亮度为10%,不会因为误操作而失去屏幕显示。

请在oled-linux项目地址中下载脚本oled-linux.sh文件,另外,用于登录时自动运行的配置文件oled-linux.desktop也将在下面提供。

在Deepin系统中安装闭源显卡驱动后屏幕亮度无法调节的解决

安装oled-linux步骤如下:

1.安装inotify-tools:

sudo apt install inotify-tools

2.下载压缩包到/tmp,解压压缩包。如果下载当路径不同,需要修改路径:

unzip oled-linux.zip

3.把oled-linux.sh移到/usr/local/bin文件夹:

sudo mv oled-linux.sh /usr/local/bin

sudo chmod +x /usr/local/bin/oled-linux.sh

4.把oled-linux.desktop移到~/.config/autostart文件夹:

cp oled-linux.desktop ~/.config/autostart

5.退出当前登录的账户,重新登录。重新登录以后,就可以正常调节屏幕亮度了。

注:如果一台机器上有多个用户/账户,其他账户的用户需要运行第2、4、5步。

附:oled-linux.desktop文件内容

[Desktop Entry]

Name=oled-linux

Exec=/usr/local/bin/oled-linux.sh

NoDisplay=true

Terminal=flase

Type=Application

 

相关主题

在Deepin 15.10系统中安装NVIDIA显卡驱动后设置屏幕亮度的方法

精选文章
热门文章