安装NVIDIA驱动程序后亮度无效

我最近在Mac Book Pro 7,1上安装了Ubuntu 11.10。 我安装了NVIDIA驱动程序(285)。 亮度键正在工作(F1和F2),我得到的盒子显示亮度但它什么也没做。 我可以在NVIDIA X服务器设置应用程序中更改亮度。 如何在不卸载驱动程序的情况下获得亮度? 提前致谢。

我能够在Ubuntu 12.04上的联想W530上运行亮度键。

这些天X自动配置自己,因此创建xorg.conf文件可能会使您的系统不灵活。 相反,您可以在/usr/share/X11/xorg.conf.d/中向文件添加一个部分,X将在其自动生成的配置中包含该部分。

因此,要使屏幕亮度键与Nvidia图形卡配合使用,请在xorg.conf.d目录中创建一个文件,例如:

sudo gedit /usr/share/X11/xorg.conf.d/10-nvidia-brightness.conf 

将以下内容粘贴到文件中:

 Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "Quadro K1000M" Option "RegistryDwords" "EnableBrightnessControl=1" EndSection 

注销并重新登录或重新启动,您的亮度键现在应该可以正常工作!

(我在这里写博客)

我的笔记本电脑遇到了类似的问题,你需要在/etc/X11/xorg.conf添加一个选项

  1. 运行命令:

     sudo nano /etc/X11/xorg.conf 
  2. 找到“设备”部分的行并添加以下内容

     Option "RegistryDwords" "EnableBrightnessControl=1" 

您需要启用亮度控制。 打开终端并键入sudo gedit /etc/x11/xorg.conf然后在设备部分中添加Option "RegistryDwords" "EnableBrightnessControl=1" ,将其粘贴到一个新行中。 然后重新启动计算机,一切都应该没问题。

感谢您提供优秀的脚本qgj。 令人遗憾的是,这个bug仍然存在并且需要解决方法。 我遇到了与James相同的问题,因为我的特定显示类型的nvidia-settings选项不再有效。 幸运的是,有一个更好的设置可用于背光亮度。 我修改了bash脚本以改为使用此设置。

 #!/bin/bash # This script was originally created by 'qgj' from askubuntu. It has been modified # to work using the BacklightBrighness setting available for some displays on the currrent nvidia driver # It has also been modified to remove display specific configuration, instead applying the setting to all # active displays which support the BacklightBrightness setting. # Tested only with nvidia-settings-319.12 and nvidia-drivers-331.20 on Linux Mint 17 Mate # # Requirements: # - NVIDIA Drivers (eg nvidia-current in Ubuntu) # - NVIDIA Settings (nvidia-settings in Ubuntu) # # This script can be used to change the brightness on systems with an NVIDIA graphics card # that lack the support for changing the brightness (probably needing acpi backlight). # It uses "nvidia-settings -a" to assign new gamma or brightness values to the display. # # If this script fails, your display likely does not support the 'BacklightBrightness' option. # In that event, execute 'nvidia-settings -n -q all' to see which options are available for the displays # # "nvidia-brightness.sh" may be run from the command line or can be assigned to the brightness keys on your Keyboard # Type "nvidia-brightness.sh --help" for valid options. if [ -z "${BASH}" ] ; then echo "please run this script with the BASH shell" exit 1 fi usage () { cat << ENDMSG Usage: nvidia-brightness.sh [ options ] Options: [ -bu ] or [ --brightness-up ] increase brightness by 10 [ -bu  ] or [ --brightness-up  ] increase brightness by specified  [ -bd ] or [ --brightness-down ] decrease brightness by 10 [ -bd  ] or [ --brightness-down  ] decrease brightness by specified  [ -i ] or [ --initialize ] Must be run once to create the settings file (~/.nvidia-brightness.cfg). Brightness settings from ~/.nvidia-settings-rc will be used if file exists, otherwise brightness will be set to 100. [ -l ] or [ --load-config ] Load current settings from ~/.nvidia-brightness.cfg (eg as X11 autostart script) Examples: nvidia-brightness -bd this will decrease gamma by 10 nvidia-brightness -bu 15 this will increase brightness by 15 ENDMSG } case $1 in -h|--help) usage exit 0 esac if [ "$1" != "-i" -a "$1" != "--initialize" ] ; then if [[ ! -f ~/.nvidia-brightness.cfg ]]; then echo 'You must run this script with the --initialize option once to create the settings file.' echo 'Type "nvidia-brightness.sh --help" for more information.'; exit 1 fi fi #### INITIALIZE #### initialize_cfg () { BRIGHTNESS_TEMP=100 echo "BRIGHTNESS=$BRIGHTNESS_TEMP" > ~/.nvidia-brightness.cfg source ~/.nvidia-brightness.cfg echo "BRIGHTNESS: $BRIGHTNESS" # Valid BacklightBrightness values are between 0 and 100 # Example: nvidia-settings -n -a BacklightBrightness=80 nvidia-settings -n -a BacklightBrightness=$BRIGHTNESS 1>/dev/null exit $? } #### LOAD CONFIGURATION #### load_cfg () { source ~/.nvidia-brightness.cfg echo "BRIGHTNESS: $BRIGHTNESS" nvidia-settings -n -a BacklightBrightness=$BRIGHTNESS 1>/dev/null } #### BRIGHTNESS CHANGE #### brightness_up () { source ~/.nvidia-brightness.cfg [[ -z $1 ]] && BRIGHTNESS_INC=10 || BRIGHTNESS_INC=$1 BRIGHTNESSNEW=$(( $BRIGHTNESS + $BRIGHTNESS_INC )) [[ $BRIGHTNESSNEW -gt 100 ]] && BRIGHTNESSNEW=100 sed -is/.*BRIGHTNESS=.*/BRIGHTNESS=$BRIGHTNESSNEW/g ~/.nvidia-brightness.cfg source ~/.nvidia-brightness.cfg echo "BRIGHTNESS: $BRIGHTNESS" nvidia-settings -n -a BacklightBrightness=$BRIGHTNESS 1>/dev/null } brightness_down () { source ~/.nvidia-brightness.cfg [[ -z $1 ]] && BRIGHTNESS_INC=10 || BRIGHTNESS_INC=$1 BRIGHTNESSNEW=$(( $BRIGHTNESS - $BRIGHTNESS_INC )) [[ $BRIGHTNESSNEW -lt 0 ]] && BRIGHTNESSNEW=0 sed -is/.*BRIGHTNESS=.*/BRIGHTNESS=$BRIGHTNESSNEW/g ~/.nvidia-brightness.cfg source ~/.nvidia-brightness.cfg echo "BRIGHTNESS: $BRIGHTNESS" nvidia-settings -n -a BacklightBrightness=$BRIGHTNESS 1>/dev/null } if [[ "$3" != "" ]]; then usage exit 1 fi error_mixed_brightness () { echo "Error: [ --brightness-up ] and [ --brightness-down ] can't be used together." } if [[ "$2" != "" ]]; then [[ ! "$2" == ?(-)+([0-9]) ]] && usage && exit 1 fi case $1 in -bu|--brightness-up) [ "$2" == "-bd" ] && error_mixed_brightness && exit 1 [ "$2" == "--brightness-down" ] && error_mixed_brightness && exit 1 brightness_up $2 ;; -bd|--brightness-down) [ "$2" == "-bu" ] && error_mixed_brightness && exit 1 [ "$2" == "--brightness-up" ] && error_mixed_brightness && exit 1 brightness_down $2 ;; -h|--help) usage exit 0 ;; -i|--initialize) if [ "$2" != "" ]; then usage; exit 1; fi initialize_cfg exit $? ;; -l|--load-config) if [ "$2" != "" ]; then usage; exit 1; fi load_cfg exit 0 ;; *) usage exit 1 esac 

您的里程可能因此脚本而异,因为某些显示器/适配器支持不同的选项。 如果您遇到问题,请阅读脚本中的帮助和注释。

希望它可以帮到某人!

有一些计算机,例如我的Lenovo W520,没有Option "RegistryDwords" "EnableBrightnessControl=1"行。 如果你是那些不幸的人之一,你可以试试nvidiabl驱动程序(链接在这里 )。

nvidiabl驱动程序提供了一种改变屏幕亮度的正确方法。 在某些笔记本电脑上, Option "RegistryDwords" "EnableBrightnessControl=1" hack会导致背光控制器或GPU发出高音噪声。

只需从这里下载并安装最新的Deb文件: https : //github.com/downloads/guillaumezin/nvidiabl/nvidiabl-dkms_0.72_all.deb

并运行:

 echo "nvidiabl" | sudo tee -a /etc/modules 

确保在计算机启动时加载模块。

我亲自使用Vaio VPCCW21FX(Nvidia Graphic)和Ubuntu Studio 11.10 ..我尝试了很多解决方案,没有什么可以解决我的LCD亮度问题! 最后写了这两个perl文件来手动设置Nvidia驱动程序配置文件中的亮度/对比度和Gamma函数。

仅当您能够在Nvidia X服务器设置中更改亮度时,这才有用

第1步:创建此文件并将其命名为“Brightness-Up.pl”(您可以使用任何文本编辑工具,如: gedit,nano,vi等。复制和粘贴)

  ### Code by forgottenrip@yahoo.com ### my $find1 = "0/RedBrightness=";my $find2 = "0/RedGamma="; open FILE, "; for (@lines) { if ($_ =~ /$find1/) { chomp $_;$value= substr($_,16,5); } if ($_ =~ /$find2/) { chomp $_;$value2= substr($_,11,5);} } my @Lines; if ( $value > 0.0) { $value = $value - 0.30 }; if ( $value2 > 1.1) { $value2 = $value2 - 0.08 }; $last_value = $value + 0.30; $Lines[0] ="0/RedBrightness=".$last_value; $Lines[1] ="0/GreenBrightness=".$last_value;; $Lines[2] ="0/BlueBrightness=".$last_value;; $last_value = $value + 0.30; $Lines[3] ="0/RedContrast=".$last_value;; $Lines[4] ="0/GreenContrast=".$last_value;; $Lines[5] ="0/BlueContrast=".$last_value;; $last_value = $value2 + 0.08; $Lines[6] ="0/RedGamma=".$last_value;; $Lines[7] ="0/GreenGamma=".$last_value;; $Lines[8] ="0/BlueGamma=".$last_value;; $filename = "Nvidia-Settings.cfg"; open fh2,'>',$filename or die ("can't open '$filename': $! \n"); foreach ( @Lines ) { chomp;print "$_\n";print fh2 "$_\n"; }; close fh2; `nvidia-settings -l --config=Nvidia-Settings.cfg`; 

第2步:然后创建另一个文件,将其命名为“Brightness-Down.pl”并填写此代码:

  ### Code by forgottenrip@yahoo.com ### my $find1 = "0/RedBrightness=";my $find2 = "0/RedGamma="; open FILE, "; for (@lines) { if ($_ =~ /$find1/) {chomp $_;$value= substr($_,16,5);} if ($_ =~ /$find2/) {chomp $_;$value2= substr($_,11,5);} } my @Lines; if ( $value < -0.80) { $value = $value + 0.30 }; if ( $value2 < 0.8) { $value2 = $value2 + 0.08 }; $last_value = $value - 0.30; $Lines[0] ="0/RedBrightness=".$last_value; $Lines[1] ="0/GreenBrightness=".$last_value;; $Lines[2] ="0/BlueBrightness=".$last_value;; $last_value = $value - 0.30; $Lines[3] ="0/RedContrast=".$last_value;; $Lines[4] ="0/GreenContrast=".$last_value;; $Lines[5] ="0/BlueContrast=".$last_value;; $last_value = $value2 - 0.08; $Lines[6] ="0/RedGamma=".$last_value;; $Lines[7] ="0/GreenGamma=".$last_value;; $Lines[8] ="0/BlueGamma=".$last_value;; $filename = "Nvidia-Settings.cfg"; open fh2,'>',$filename or die ("can't open '$filename': $! \n"); foreach ( @Lines ) { chomp;print "$_\n";print fh2 "$_\n"; }; close fh2; `nvidia-settings -l --config=Nvidia-Settings.cfg`; 

第3步:您需要创建另一个包含Nvidia设置的文件。将其命名为“Nvidia-Settings.cfg”,重要的是您写的名称完全相同。 填充:

 0/RedBrightness=0.1 0/GreenBrightness=0.1 0/BlueBrightness=0.1 0/RedContrast=0.1 0/GreenContrast=0.1 0/BlueContrast=0.1 0/RedGamma=1.14 0/GreenGamma=1.14 0/BlueGamma=1.14 

而已! 现在将这些文件放在唯一的文件夹中..您必须将function键绑定到这两个perl文件。您可以使用Compiz>命令来执行此操作。 运行以下命令以安装compizconfig-settings-manager

 sudo apt-get install compizconfig-settings-manager 

甚至你可以在shell(终端)中单独运行这两个命令:

 user$ perl Brightness/Brightness-Up.pl user$ perl Brightness/Brightness-Down.pl 

Brightness是文件夹,我将这些文件放入其中。

其他答案是很好的尝试步骤,但请注意,Ubuntu / Linux内核和Nvidia驱动程序的某些组合将无法正常工作。 我使用12.04多年,即使我尝试了上述所有答案,我也无法让任何Nvidia驱动程序支持Macbook Pro 5,5上的屏幕调光。

当我最终升级到14.04时,我尝试了Nouveau驱动程序,它支持屏幕调光,并且通常更快,更可靠和Nvidia。 不幸的是,它不支持暂停/恢复,使其在笔记本电脑上无用。 我切换回Nvidia,但是有几个驱动程序导致X / lightdm崩溃,导致我无法登录。我终于发现Nvidia 340驱动程序在我的Macbook Pro 5,5和Ubuntu 14.04上都很稳定并且还支持调光。

仅供参考,在联想W520上完成了这项工作,并添加了简单的选项“RegistryDwords”“EnableBrightnessControl = 1”

到xorg.conf就足够了 – 不需要任何其他的博弈,并且当前的NVidia版本都可以正常运行(具体来说,运行346.35)

NVIDIA亮度bash脚本

上面的perl脚本对我没有用,所以我把自己的脚本写成了一个bash脚本(因为我不知道perl)。 它有点长,但它自己创建设置文件,可以与命令行选项一起使用,以同时调整亮度或伽玛或两者。 我将它与–brightness-up和–brightness-down开关一起用于键盘上的亮度键。 易于在XFCE4中分配,当然也可以在KDE / GNOME中分配。

nvidia-brightness.sh:

 #!/bin/sh # Tested only with nvidia-settings-319.12 and nvidia-drivers-319.17 on Funtoo Linux running XFCE 4.10 # # Requirements: # - NVIDIA Drivers (eg nvidia-current in Ubuntu) # - NVIDIA Settings (nvidia-settings in Ubuntu) # - xrandr (used by default to determine the correct display name) # # This script can be used to change the brightness on systems with an NVIDIA graphics card # that lack the support for changing the brightness (probably needing acpi backlight). # It uses "nvidia-settings -a" to assign new gamma or brightness values to the display. # # "nvidia-brightness.sh" may be run from the command line or can be assigned to the brightness keys on your Keyboard # eg in XFCE4. # # Type "nvidia-brightness.sh --help" for valid options. usage () { cat << ENDMSG Usage: nvidia-brightness.sh [ options ] Options: [ -gu ] or [ --gamma-up ] increase gamma by 0.1 [ -gd ] or [ --gamma-down ] decrease gamma by 0.1 [ -bu ] or [ --brightness-up ] increase brightness by 0.1 [ -bd ] or [ --brightness-down ] decrease brightness by 0.1 [ -i ] or [ --initialize ] Must be run once to create the settings file (~/.nvidia-brightness.cfg). Brightness settings from ~/.nvidia-settings-rc will be used if file exists, otherwise gamma will be set to 1.0 and brightness to 0.0 (NVIDIA Standard). [ -l ] or [ --load-config ] Load current settings from ~/.nvidia-brightness.cfg (eg as X11 autostart script) Examples: nvidia-brightness -gd this will decrease gamma by 0.1 nvidia-brightness -bu -gd this will increase brightness by 0.1 and decrease gamma by 0.1 ENDMSG } case $1 in -h|--help) usage exit 0 esac if [ "$1" != "-i" -a "$1" != "--initialize" ]; then if [ ! -f ~/.nvidia-brightness.cfg ]; then echo 'You must run this script with the --initialize option once to create the settings file.' echo 'Type "nvidia-brightness.sh --help" for more information.'; exit 1 fi fi #### INITIALIZE #### initialize_cfg () { CONNECTED="[`xrandr | grep " connected" | awk '{ print $1 }'`]" #CONNECTED="`cat ~/.nvidia-settings-rc | grep RedBrightness | grep -o "\[.*]"`" #CONNECTED="[DVI-I-1]" #CONNECTED="[dpy:2]" #CONNECTED="0" if [ -f ~/.nvidia-settings-rc ]; then if [ "`grep RedGamma ~/.nvidia-settings-rc`" != "" ]; then if [ "`grep RedBrightness ~/.nvidia-settings-rc`" != "" ]; then GAMMA_TEMP=`grep RedGamma= ~/.nvidia-settings-rc | sed s/^.*=//` BRIGHTNESS_TEMP=`grep RedBrightness= ~/.nvidia-settings-rc | sed s/^.*=//` NVIDIA_SETTINGS_OK=1 fi fi fi [ "$NVIDIA_SETTINGS_OK" != "1" ] && \ GAMMA_TEMP=1.000000 \ BRIGHTNESS_TEMP=0.000000 echo "\ CONNECTED_DISPLAY=$CONNECTED GAMMA=$GAMMA_TEMP BRIGHTNESS=$BRIGHTNESS_TEMP" > ~/.nvidia-brightness.cfg source ~/.nvidia-brightness.cfg GAMMACOMMA=`echo $GAMMA | sed s/"\."/"\,"/` BRIGHTNESSCOMMA=`echo $BRIGHTNESS | sed s/"\."/"\,"/` nvidia-settings -n -a $CONNECTED_DISPLAY/Gamma=$GAMMACOMMA -a $CONNECTED_DISPLAY/Brightness=$BRIGHTNESSCOMMA 1>/dev/null } #### LOAD CONFIGURATION #### load_cfg () { source ~/.nvidia-brightness.cfg GAMMACOMMA=`echo $GAMMA | sed s/"\."/"\,"/` BRIGHTNESSCOMMA=`echo $BRIGHTNESS | sed s/"\."/"\,"/` nvidia-settings -n -a $CONNECTED_DISPLAY/Gamma=$GAMMACOMMA -a $CONNECTED_DISPLAY/Brightness=$BRIGHTNESSCOMMA 1>/dev/null } #### GAMMA CHANGE #### gamma_up () { source ~/.nvidia-brightness.cfg GAMMANEW=`echo $GAMMA | awk '{printf "%f", $GAMMA + 0.100000}'` GAMMACOMMA=`echo $GAMMANEW | sed s/"\."/"\,"/` nvidia-settings -n -a $CONNECTED_DISPLAY/Gamma=$GAMMACOMMA 1>/dev/null sed -is/.*GAMMA=.*/GAMMA=$GAMMANEW/g ~/.nvidia-brightness.cfg } gamma_down () { source ~/.nvidia-brightness.cfg GAMMANEW=`echo $GAMMA | awk '{printf "%f", $GAMMA - 0.100000}'` GAMMACOMMA=`echo $GAMMANEW | sed s/"\."/"\,"/` nvidia-settings -n -a $CONNECTED_DISPLAY/Gamma=$GAMMACOMMA 1>/dev/null sed -is/.*GAMMA=.*/GAMMA=$GAMMANEW/g ~/.nvidia-brightness.cfg } #### BRIGHTNESS CHANGE #### brightness_up () { source ~/.nvidia-brightness.cfg BRIGHTNESSNEW=`echo $BRIGHTNESS | awk '{printf "%f", $BRIGHTNESS + 0.100000}'` BRIGHTNESSCOMMA=`echo $BRIGHTNESSNEW | sed s/"\."/"\,"/` nvidia-settings -n -a $CONNECTED_DISPLAY/Brightness=$BRIGHTNESSCOMMA 1>/dev/null sed -is/.*BRIGHTNESS=.*/BRIGHTNESS=$BRIGHTNESSNEW/g ~/.nvidia-brightness.cfg } brightness_down () { source ~/.nvidia-brightness.cfg BRIGHTNESSNEW=`echo $BRIGHTNESS | awk '{printf "%f", $BRIGHTNESS - 0.100000}'` BRIGHTNESSCOMMA=`echo $BRIGHTNESSNEW | sed s/"\."/"\,"/` nvidia-settings -n -a $CONNECTED_DISPLAY/Brightness=$BRIGHTNESSCOMMA 1>/dev/null sed -is/.*BRIGHTNESS=.*/BRIGHTNESS=$BRIGHTNESSNEW/g ~/.nvidia-brightness.cfg } if [ "$3" != "" ]; then usage exit 1 fi error_mixed_gamma () { echo "Error: [ --gamma-up ] and [ --gamma-down ] can't be used together." } error_mixed_brightness () { echo "Error: [ --brightness-up ] and [ --brightness-down ] can't be used together." } if [ "$2" != "" ]; then [ "$2" != "-bu" -a "$2" != "--brightness-up" -a "$2" != "-bd" -a "$2" != "--brightness-down" \ -a "$2" != "-gu" -a "$2" != "--gamma-up" -a "$2" != "-gd" -a "$2" != "--gamma-down" ] && usage && exit 1 fi case $1 in -gu|--gamma-up) [ "$2" == "-gd" ] && error_mixed_gamma && exit 1 [ "$2" == "--gamma-down" ] && error_mixed_gamma && exit 1 gamma_up ;; -gd|--gamma-down) [ "$2" == "-gu" ] && error_mixed_gamma && exit 1 [ "$2" == "--gamma-up" ] && error_mixed_gamma && exit 1 gamma_down ;; -bu|--brightness-up) [ "$2" == "-bd" ] && error_mixed_brightness && exit 1 [ "$2" == "--brightness-down" ] && error_mixed_brightness && exit 1 brightness_up ;; -bd|--brightness-down) [ "$2" == "-bu" ] && error_mixed_brightness && exit 1 [ "$2" == "--brightness-up" ] && error_mixed_brightness && exit 1 brightness_down ;; -h|--help) usage exit 0 ;; -i|--initialize) if [ "$2" != "" ]; then usage; exit 1; fi initialize_cfg exit 0 ;; -l|--load-config) if [ "$2" != "" ]; then usage; exit 1; fi load_cfg exit 0 ;; *) usage exit 1 esac case $2 in -gu|--gamma-up) gamma_up ;; -gd|--gamma-down) gamma_down ;; -bu|--brightness-up) brightness_up ;; -bd|--brightness-down) brightness_down ;; -h|--help) usage exit 0 ;; "") ;; *) usage exit 1 esac 

用法:

将文件保存在PATH中的某个位置,例如

 /usr/local/bin/nvidia-brightness.sh 

别忘了

 chmod +x /usr/local/bin/nvidia-brightness.sh 

在使用之前,您必须输入

 nvidia-brightness.sh -i 

这将创建设置文件,也可以随时用于重置亮度。

类型

 nvidia-settings.sh --help 

了解更多选择:

 Usage: nvidia-brightness.sh [ options ] Options: [ -gu ] or [ --gamma-up ] increase gamma by 0.1 [ -gd ] or [ --gamma-down ] decrease gamma by 0.1 [ -bu ] or [ --brightness-up ] increase brightness by 0.1 [ -bd ] or [ --brightness-down ] decrease brightness by 0.1 [ -i ] or [ --initialize ] Must be run once to create the settings file (~/.nvidia-brightness.cfg). Brightness settings from ~/.nvidia-settings-rc will be used if file exists, otherwise gamma will be set to 1.0 and brightness to 0.0 (NVIDIA Standard). [ -l ] or [ --load-config ] Load current settings from ~/.nvidia-brightness.cfg (eg as X11 autostart script) Examples: nvidia-brightness -gd this will decrease gamma by 0.1 nvidia-brightness -bu -gd this will increase brightness by 0.1 and decrease gamma by 0.1 

我使用NVIDIA显卡并遇到像你这样的问题。
但我尝试了这件事,它的工作:

1.使用命令安装NVIDIA驱动程序:
sudo apt-add-repository ppa:ubuntu-x-swat / x-updates
sudo apt-get update
sudo apt-get install nvidia-current
2.然后,重启
3.完成。

资料来源: http : //noob-tech.blogspot.co.id/2015/04/Install-VGA-Driver-On-Ubuntu.html

从16.04升级后,我在Ubuntu 16.10中遇到了同样的问题。 在xorg.conf文件(/ usr / share / doc / xserver-xorg-video-intel /)中,我将驱动程序从“intel”更改为“nvidia”。