因为工作需要用到Ubuntu 18.04,桌面环境是GNOME,不过亮度调整和桌面环境一般没什么关系,所用的是NVIDIA独显,亮度调整如下操作。
本文思路 不管是GNOME还是Unity,都会尝试自己去接管亮度调整,也就是去/sys/class/backlight下面去找brightness,所以说亮度无法调整大概可以归类到两种情况: 1.sys/class/backlight/下面是空的,多见于英伟达独显以及某些笔记本。 2.sys/class/backlight/下面有多个,多见于双显卡笔记本。 既然都想调亮度了,肯定是把Ubuntu 18.04作为主力系统使用的,所以先安装好闭源驱动,再说调整亮度的事情。可以参考Ubuntu 18.04 NVIDIA驱动安装总结一文。 笔者的情况是Thinkpad P51,使用discreted graphic,核显完全禁用,输出与运算都由NVIDIA独显负责,故属于情况1,这个情况下NVIDIA驱动接管了亮度调整,但默认不开启亮度调整功能。解决的话,需要开启NVIDIA的亮度调整handler,怎么处理下面再说。 总体的思路总结起来,大概就是想办法让/sys/class/backlight下面只有一个brightness,并且是有效的那一个。 情况1:对于NVIDIA独显,加核心参数把亮度调整handler开启就行了。 对于非NVIDIA独显的,在grub中的内核启动参数加上 acpi_osi=Linux 基本可以解决问题。 情况2:这个情况考虑禁掉独显,或者去用bumblebee,但最终的思路同上,想办法只留一个有效的brightness在/sys/class/backlight中,哪个有效请自行 echo 到brightness中改值测试。
笔者的情况及解决方法 使用的是NVIDIA独显,Ubuntu 18.04操作系统,操作如下: 1.安装至少387版本的NVIDIA闭源驱动,笔者使用390.24(亮度调整handler 从387开始作为beta性功能提供,默认关闭) 2.在moprobe.conf中给nvidia kernel模块加参数,这个文件在哪自己用whereis找吧,把如下内容加进去: options nvidia Nvreg_EnableBacklightHandler=1 3.重新加载kernel参数,也就是让上一步的操作生效 # update-initramfs 4.重启电脑,亮度就应该正常了,检查/sys/class/backlight,下面有唯一的nvidia_0,系统出现亮度滑块,亮度快捷键有效。
总结 别的情况还是看上面的思路,双显卡用户尽量去想办法屏蔽掉独显,除非说你的独显可以单独工作。总的来说没有必要使用任何亮度插件,调整起来麻烦且浪费精力。
相关主题 |