ความสว่างไม่ทำงานหลังจากติดตั้งไดรเวอร์ NVIDIA


26

ฉันเพิ่งติดตั้ง Ubuntu 11.10 บน Mac Book Pro 7,1 ฉันติดตั้งไดรเวอร์ NVIDIA (285) ปุ่มความสว่างใช้งานได้ (F1 และ F2) และฉันได้รับกล่องแสดงความสว่าง แต่มันไม่ทำอะไรเลย ฉันสามารถเปลี่ยนความสว่างในแอปพลิเคชันการตั้งค่าเซิร์ฟเวอร์ NVIDIA X ฉันจะทำให้ความสว่างทำงานโดยไม่ต้องถอนการติดตั้งไดรเวอร์ได้อย่างไร ขอบคุณล่วงหน้า.


สิ่งเดียวกันเกิดขึ้นกับฉันใน MacBook Pro 5,5
Cerin

1
เพียงแค่ติดตามฉันลองใช้วิธีการแก้ปัญหาที่ทำเป็นเอกสารทั้งหมดและไม่เคยทำงานอะไรเลยรวมถึงการใช้ไดรเวอร์ Nvida รุ่นล่าสุด อย่างไรก็ตามเมื่อฉันลบไดรเวอร์ Nvidia และใช้ไดรเวอร์ Nouveau โอเพ่นซอร์สแล้วหน้าจอจะลดแสงลงทันทีที่เริ่มทำงาน
Cerin

@Cerin ทำไมไม่เขียนมันขึ้นมาเป็นคำตอบรวมถึงขั้นตอนทั้งหมดเพื่อให้ผู้ใช้มือใหม่สามารถติดตามได้? ส่งข้อคิดเห็นมาให้ฉันเมื่อคุณทำเช่นนั้นและถ้าเป็นคำตอบที่ดีฉันจะโหวตขึ้นและจะช่วยคนอื่นได้เช่นกัน
Elder Geek

1
@ElderGeek แต่น่าเสียดายที่ Nouveau ไม่สนับสนุนการหยุดชั่วคราว / ดำเนินการต่อทำให้ไม่ได้ผลกับแล็ปท็อปซึ่งเป็นเรื่องที่น่าละอายเพราะมันดีกว่าไดรเวอร์ของ Nvidia ฉันอัพเกรดเป็น 14.04 และไดรเวอร์ Nvidia 340 และตอนนี้หน้าจอลดแสงทำงาน
Cerin

คำตอบ:


43

ฉันสามารถใช้ปุ่มปรับความสว่างบน Lenovo W530 บน Ubuntu 12.04 ได้

ทุกวันนี้ 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

ออกจากระบบและกลับเข้าสู่ระบบหรือรีบูตและตอนนี้ปุ่มความสว่างของคุณควรทำงาน

(ฉันบล็อกนี่ที่นี่ )


ขอบคุณมันใช้ได้กับฉันใน Ubuntu 14.04 บน Lenovo W530 พร้อมไดรเวอร์ nvidia อย่างเป็นทางการ (ดาวน์โหลดจากเว็บไซต์ nvidia)
Saeed Zarinfam

ฉันมีเครื่อง W530 ที่มี linux มิ้นต์ 17.3, วิธีนี้ใช้โดยตรง (สำหรับฉันเพียงแค่ออกจากระบบและเข้าสู่ระบบในงาน, ไม่ต้องรีบูตเครื่อง)
22363

ทำงานอย่างสมบูรณ์แบบควรทำเครื่องหมายเป็นคำตอบที่ถูกต้อง
OKAN

1
ไม่ได้ผลกับฉันใน macbook 5.1 ด้วย GeForce 9400M บู๊ทเป็นหน้าจอสีดำหลังจากด้วง ต้องลบไฟล์โดยใช้ life-image จาก usb-drive ฉันติดตั้ง Ubuntu Gnome 16.04 ใหม่
กระบอง

3
จะหาชื่อ BoardName ได้อย่างไร? อาจฟังดูงี่เง่า แต่นี่อาจเป็นสาเหตุที่ทำให้ฉันไม่สามารถทำงานได้
davidbaumann

6

ฉันมีปัญหาคล้ายกันกับแล็ปท็อปของฉันมีตัวเลือกที่คุณต้องเพิ่มในของคุณ /etc/X11/xorg.conf

  1. เรียกใช้คำสั่ง:

    sudo nano /etc/X11/xorg.conf
    
  2. ค้นหาบรรทัดส่วน "อุปกรณ์" และเพิ่มรายการต่อไปนี้

    Option "RegistryDwords" "EnableBrightnessControl=1"    
    

สิ่งนี้ใช้ได้กับ Ubuntu 12.04
shaneonabike

Xubuntu 12.04 ทำงานได้ดี
Stasik

สิ่งนี้ไม่ได้ผลสำหรับฉันใน 12.04
Cerin

สิ่งนี้ใช้ไม่ได้กับฉันใน 18.04
Hany Alsamman

1
18.04 ไม่มีไฟล์นี้ แต่การสร้างไฟล์. config ใหม่เหมือนคำตอบของ Chris Pearce ก็ใช้ได้เช่นกัน
rogerdpack

4

คุณต้องเปิดใช้งานการควบคุมความสว่าง เปิดเทอร์มินัลแล้วพิมพ์sudo gedit /etc/x11/xorg.conf จากนั้นเพิ่มOption "RegistryDwords" "EnableBrightnessControl=1"ภายในส่วนอุปกรณ์วางไว้ในบรรทัดใหม่ จากนั้นรีสตาร์ทคอมพิวเตอร์และทุกอย่างควรจะดี


อย่าทำสิ่งนี้บน Ubuntu 18. พา ธ x11 ควร X11 และควรอยู่ในส่วน แต่ก็ไม่ได้ผล
Shital Shah

3

ขอบคุณที่ให้สคริปต์ที่ยอดเยี่ยม qgj เป็นเรื่องน่าเศร้าที่ข้อผิดพลาดนี้ยังคงมีอยู่และจำเป็นต้องแก้ไข ฉันมีปัญหาเช่นเดียวกับเจมส์ที่ได้รับข้อผิดพลาดเนื่องจากตัวเลือกไม่ถูกต้องกับการตั้งค่า nvidia สำหรับประเภทการแสดงผลเฉพาะของฉันอีกต่อไป โชคดีที่มีมันจึงมีการตั้งค่าที่ดีกว่าสำหรับความสว่างของแสงไฟ ฉันได้แก้ไขสคริปต์ทุบตีเพื่อใช้การตั้งค่านี้แทน

#!/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 (e.g. 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 <no> ] or                   
   [ --brightness-up <no> ]          increase brightness by specified <no>

   [ -bd ] or [ --brightness-down ]  decrease brightness by 10
   [ -bd <no> ] or                   
   [ --brightness-down <no> ]        decrease brightness by specified <no>

   [ -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
                                     (e.g. 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 -i  s/.*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 -i  s/.*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

ระยะทางของคุณอาจแตกต่างกันไปตามสคริปต์นี้เนื่องจากจอภาพ / อะแดปเตอร์บางตัวรองรับตัวเลือกที่แตกต่างกัน หากคุณพบปัญหากับมันโปรดอ่านความช่วยเหลือและความคิดเห็นในสคริปต์

หวังว่ามันจะช่วยให้ใครบางคน!


1

มีคอมพิวเตอร์บางเครื่องเช่น Lenovo W520 ของฉันซึ่งไม่ตรงกับOption "RegistryDwords" "EnableBrightnessControl=1"สาย หากคุณเป็นหนึ่งในผู้โชคร้ายคุณสามารถลองใช้nvidiablไดรเวอร์ (ลิงก์ที่นี่ )

nvidiablไดรเวอร์ให้เป็นวิธีที่เหมาะสมในการเปลี่ยนความสว่างหน้าจอ ในแล็ปท็อปบางเครื่องOption "RegistryDwords" "EnableBrightnessControl=1"แฮ็คจะทำให้ตัวควบคุมแบ็คไลท์หรือ GPU ของคุณเปล่งเสียงแหลมสูง

เพียงดาวน์โหลดและติดตั้งไฟล์ Deb ล่าสุดจากที่นี่: https://github.com/downloads/guillaumezin/nvidiabl/nvidiabl-dkms_0.72_all.deb

และเรียกใช้:

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

เพื่อให้แน่ใจว่าโมดูลจะถูกโหลดเมื่อคอมพิวเตอร์บูท


1

ฉันเองใช้ Vaio VPCCW21FX (Nvidia Graphic) และ Ubuntu Studio 11.10 .. ฉันลองใช้วิธีแก้ปัญหามากมายและไม่มีอะไรสามารถแก้ไขปัญหาของฉันด้วยความสว่างของจอ LCD! ในที่สุดก็เขียนไฟล์ perl สองไฟล์นี้เพื่อตั้งค่าฟังก์ชั่นความสว่าง / ความคมชัดและแกมม่าด้วยตนเองภายในไฟล์ปรับแต่งไดรเวอร์ Nvidia

สิ่งนี้จะเป็นประโยชน์หากคุณสามารถเปลี่ยนความสว่างภายในการตั้งค่าเซิร์ฟเวอร์ Nvidia X

ขั้นตอนที่ 1:สร้างไฟล์นี้และตั้งชื่อว่า "Brightness-Up.pl" (คุณสามารถใช้เครื่องมือแก้ไขข้อความใด ๆ เช่น: gedit, nano, vi ฯลฯคัดลอกและวาง)

    ### Code by forgottenrip@yahoo.com ###
    my $find1 = "0/RedBrightness=";my $find2 = "0/RedGamma=";
open FILE, "<Nvidia-Settings.cfg";
my @lines = <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, "<Nvidia-Settings.cfg";
my @lines = <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 Settings .. ตั้งชื่อมันว่า "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 Keysของคุณกับไฟล์ perl สองตัวนี้คุณสามารถใช้Compiz> commandเพื่อทำเช่นนั้น เรียกใช้คำสั่งด้านล่างเพื่อติดตั้ง compizconfig-settings-manager

sudo apt-get install compizconfig-settings-manager

หรือแม้กระทั่งคุณสามารถแยกคำสั่งสองคำสั่งนี้ในเชลล์ (เทอร์มินัล):

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

โดยที่ความสว่างคือโฟลเดอร์ฉันใส่ไฟล์เหล่านั้นลงไป


1

สคริปต์ทุบตีความสว่างของ NVIDIA

สคริปต์ Perl ด้านบนใช้งานไม่ได้สำหรับฉันดังนั้นฉันจึงเขียนสคริปต์ของตัวเองเป็นสคริปต์ทุบตี (เนื่องจากฉันไม่รู้ Perl) มันค่อนข้างยาว แต่มันสร้างไฟล์การตั้งค่าด้วยตัวเองและสามารถใช้กับตัวเลือกบรรทัดคำสั่งเพื่อปรับความสว่างหรือแกมม่าหรือทั้งสองอย่างในเวลาเดียวกัน ฉันใช้มันกับ - ความสว่างขึ้นและ - ความสว่างต่ำลงสำหรับปุ่มความสว่างบนคีย์บอร์ดของฉัน ง่ายต่อการกำหนดใน 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 (e.g. 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
# e.g. 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
                                     (e.g. 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 -i  s/.*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 -i  s/.*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 -i  s/.*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 -i  s/.*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
                                     (e.g. 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

ดูเหมือนว่าสิ่งที่ฉันกำลังมองหา แต่ฉันได้รับข้อผิดพลาด: ข้อผิดพลาด: ข้อผิดพลาดในการแยกวิเคราะห์การมอบหมาย '/ Gamma =' (ไม่ได้ระบุค่าคุณลักษณะ)
James

1

คำตอบอื่น ๆ เป็นขั้นตอนที่ดีในการลองใช้ แต่โปรดทราบว่าการรวมกันบางอย่างของ Ubuntu / Linux Kernel และไดรเวอร์ Nvidia จะไม่ทำงาน ฉันใช้ 12.04 เป็นเวลาหลายปีและแม้ว่าฉันจะลองคำตอบทั้งหมดข้างต้น แต่ฉันไม่สามารถรับไดรเวอร์ Nvidia ใด ๆ เพื่อรองรับหน้าจอมืดลงบน Macbook Pro 5,5 ของฉัน

ในที่สุดเมื่อฉันอัพเกรดเป็น 14.04 ฉันลองใช้ไดรเวอร์ Nouveau ซึ่งรองรับการหรี่หน้าจอและโดยทั่วไปจะเร็วกว่าและน่าเชื่อถือกว่าและ Nvidia น่าเสียดายที่มันไม่รองรับการหยุดชั่วคราว / ดำเนินการต่อทำให้ไม่ได้ใช้งานบนแล็ปท็อป ฉันเปลี่ยนกลับเป็น Nvidia แต่ไดรเวอร์หลายตัวทำให้ X / lightdm หยุดทำงานทำให้ฉันไม่สามารถล็อกอินได้ในที่สุดฉันก็พบว่าไดรเวอร์ Nvidia 340 นั้นเสถียรด้วย Macbook Pro 5,5 และ Ubuntu 14.04 และยังรองรับการลดแสงอีกด้วย


1

FYI เพิ่งจะทำสิ่งนี้กับ Lenovo W520 และการเพิ่มตัวเลือกบรรทัดอย่างง่าย "RegistryDwords" "EnableBrightnessControl = 1"

ถึง xorg.conf ก็เพียงพอแล้ว - ไม่จำเป็นต้องมีโบกี้อื่นและทำงานได้ดีกับรีลีส NVidia ปัจจุบัน (โดยเฉพาะวิ่ง 346.35)


0

ฉันใช้การ์ดกราฟิก NVIDIA และมีปัญหาเหมือนคุณ
แต่ฉันลองสิ่งนี้และมันใช้งานได้:

1. ติดตั้ง NVIDIA Driver ด้วยคำสั่ง:
sudo apt-add-repository ppa: ubuntu-x-swat / x-updates
sudo apt-get update
sudo apt-get install nvidia ปัจจุบัน
2. จากนั้น รีบูต
3. เสร็จสิ้น

ที่มา: http://noob-tech.blogspot.co.id/2015/04/Install-VGA-Driver-On-Ubuntu.html


0

ฉันมีปัญหาเดียวกันใน Ubuntu 16.10 หลังจากอัปเกรดจาก 16.04 ในไฟล์ xorg.conf (/ usr / share / doc / xserver-xorg-video-intel /) ฉันเปลี่ยนไดรเวอร์จาก "intel" เป็น "nvidia"


2
ขอบคุณที่พยายามช่วย! คุณจะอธิบายเกี่ยวกับกระบวนการได้หรือไม่?
earthmeLon

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.