Brightness tidak berfungsi setelah menginstal driver NVIDIA


26

Saya baru-baru ini menginstal Ubuntu 11.10 di Mac Book Pro 7,1 saya. Saya menginstal driver NVIDIA (285). Tombol kecerahan berfungsi (F1 dan F2) dan saya mendapatkan kotak yang menunjukkan kecerahan tetapi tidak melakukan apa-apa. Saya dapat mengubah kecerahan dalam aplikasi Pengaturan Server NVIDIA X. Bagaimana saya bisa mendapatkan kecerahan berfungsi tanpa menghapus driver? Terima kasih sebelumnya.


Hal yang sama terjadi pada saya di MacBook Pro 5,5.
Cerin

1
Sebagai tindak lanjut, saya mencoba semua solusi yang terdokumentasi, dan tidak ada yang berhasil, termasuk menggunakan driver Nvida terbaru. Namun, ketika saya membersihkan driver Nvidia dan menggunakan driver Nouveau open source, peredupan layar segera mulai berfungsi.
Cerin

@Cerin mengapa tidak menuliskannya sebagai jawaban termasuk semua langkah sehingga pengguna pemula dapat mengikutinya? Berikan saya komentar ketika Anda sudah melakukannya dan jika itu jawaban yang bagus, saya akan mengangkatnya, dan itu mungkin akan membantu orang lain juga.
Penatua Geek

1
@ElderGeek, Sayangnya, Nouveau tidak mendukung penangguhan / melanjutkan, sehingga tidak berguna untuk laptop, yang memalukan karena itu lebih baik daripada driver Nvidia. Saya memutakhirkan ke 14,04 dan driver Nvidia 340, dan sekarang peredupan layar berfungsi.
Cerin

Jawaban:


43

Saya dapat mengaktifkan kunci kecerahan pada Lenovo W530 di Ubuntu 12.04.

Saat ini X secara otomatis mengkonfigurasi sendiri, sehingga membuat file xorg.conf mungkin membuat sistem Anda tidak fleksibel. Sebagai gantinya, Anda dapat menambahkan bagian ke file di /usr/share/X11/xorg.conf.d/ dan X akan menyertakan bagian itu dalam konfigurasi yang dihasilkan secara otomatis.

Jadi, agar kunci kecerahan layar berfungsi dengan kartu grafis Nvidia Anda, buat file di direktori xorg.conf.d, mis:

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

Rekatkan yang berikut ke dalam file:

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

Logout dan log in kembali, atau reboot, dan kunci kecerahan Anda sekarang akan berfungsi!

(Saya membuat blog ini di sini )


Terima kasih, ini berfungsi untuk saya di Ubuntu 14.04 di Lenovo W530 dengan driver nvidia resmi (diunduh dari situs nvidia).
Saeed Zarinfam

Saya memiliki mesin W530 dengan linux mint 17.3, solusi ini berlaku langsung (bagi saya hanya logout dan log in bekerja, tidak perlu reboot).
user22363

Bekerja dengan sempurna, ini harus ditandai sebagai jawaban yang benar
OKAN

1
Tidak bekerja untuk saya di macbook 5.1 dengan GeForce 9400M. Boot ke layar hitam setelah grub. Harus menghapus file menggunakan image-hidup dari usb-drive. Saya sedang menginstal baru Ubuntu Gnome 16.04.
fuli

3
Bagaimana cara mengetahui BoardName? Mungkin terdengar bodoh, tetapi ini mungkin alasan saya tidak membuatnya bekerja.
davidbaumann

6

Saya memiliki masalah serupa dengan laptop saya, ada opsi yang perlu Anda tambahkan ke laptop Anda /etc/X11/xorg.conf

  1. Jalankan perintah:

    sudo nano /etc/X11/xorg.conf
    
  2. Temukan bagian Line "Device" dan tambahkan yang berikut ini

    Option "RegistryDwords" "EnableBrightnessControl=1"    
    

Ini juga berfungsi dengan Ubuntu 12.04
shaneonabike

Xubuntu 12,04 juga berfungsi
Stasik

Ini tidak berhasil untuk saya dalam 12.04.
Cerin

Ini tidak berhasil untuk saya pada 18,04
Hany Alsamman

1
18.04 tidak memiliki file ini tetapi membuat file .conf baru seperti jawaban Chris Pearce juga berfungsi.
rogerdpack

4

Anda harus mengaktifkan Kontrol Kecerahan. Buka terminal dan ketik sudo gedit /etc/x11/xorg.conf Dan kemudian tambahkan Option "RegistryDwords" "EnableBrightnessControl=1"di dalam bagian perangkat , tempel di baris baru. Kemudian restart komputer Anda dan semuanya akan baik-baik saja.


Jangan lakukan ini di Ubuntu 18. Path x11 harus X11 dan ini harus berada di dalam Bagian tetapi bahkan itu tidak berfungsi.
Shital Shah

3

Terima kasih telah menyediakan skrip qgj yang hebat. Sangat menyedihkan bahwa bug ini masih berlanjut dan penyelesaian diperlukan. Saya memiliki masalah yang sama dengan James mendapatkan kesalahan karena opsi tidak lagi valid dengan pengaturan nvidia untuk tipe tampilan spesifik saya. Seperti nasibnya, ada pengaturan yang lebih baik tersedia untuk kecerahan cahaya latar. Saya telah memodifikasi skrip bash untuk menggunakan pengaturan ini.

#!/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

Jarak tempuh Anda mungkin berbeda dengan skrip ini karena beberapa display / adaptor mendukung opsi yang berbeda. Jika Anda mengalami masalah dengannya, harap baca bantuan dan komentar di skrip.

Semoga ini bisa membantu seseorang!


1

Ada beberapa komputer, seperti Lenovo W520 saya, yang tidak sesuai dengan Option "RegistryDwords" "EnableBrightnessControl=1"jalurnya. Jika Anda salah satu dari mereka yang kurang beruntung, Anda dapat mencoba nvidiabldrivernya (tautan di sini ).

The nvidiablSopir menyediakan cara yang tepat untuk mengubah kecerahan layar. Pada beberapa laptop, Option "RegistryDwords" "EnableBrightnessControl=1"retasan akan menyebabkan pengontrol cahaya latar atau GPU Anda mengeluarkan suara bernada tinggi.

Cukup unduh dan instal file Deb terbaru dari sini: https://github.com/downloads/guillaumezin/nvidiabl/nvidiabl-dkms_0.72_all.deb

dan lari:

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

untuk memastikan bahwa modul akan dimuat saat komputer melakukan booting.


1

Saya pribadi menggunakan Vaio VPCCW21FX (Nvidia Graphic) dan Ubuntu Studio 11.10 .. Saya mencoba banyak solusi dan tidak ada yang bisa menyelesaikan masalah saya dengan kecerahan LCD! Akhirnya menulis dua file perl ini untuk secara manual mengatur kecerahan / Kontras dan fungsi Gamma di dalam file konfigurasi driver Nvidia.

Ini hanya akan membantu jika Anda dapat mengubah kecerahan di dalam Pengaturan Server Nvidia X

Langkah 1: buat file ini dan beri nama "Brightness-Up.pl" (Anda dapat menggunakan alat pengeditan teks apa pun seperti: gedit, nano, vi, dll. Salin & tempel)

    ### 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`;

Langkah 2: lalu buat file lain, beri nama "Brightness-Down.pl" dan isi dengan kode ini:

    ### 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`;

Langkah 3: Anda perlu membuat file lain yang berisi Pengaturan Nvidia .. beri nama "Nvidia-Settings.cfg" yang penting Anda menulis nama yang persis sama. isi dengan:

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

Itu dia! sekarang tempatkan file-file ini di folder unik .. Anda harus mengikat Tombol Fungsi Anda ke dua file perl ini. Anda dapat menggunakan perintah Compiz> untuk melakukan itu. Jalankan perintah di bawah ini untuk menginstal compizconfig-settings-manager

sudo apt-get install compizconfig-settings-manager

atau bahkan Anda dapat menjalankan secara terpisah dengan dua perintah ini di shell (terminal):

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

Di mana Brightness adalah folder saya meletakkan file-file itu di dalamnya.


1

Skrip bash kecerahan NVIDIA

Skrip perl di atas tidak berfungsi untuk saya, jadi saya menulis skrip saya sendiri sebagai skrip bash (karena saya tidak tahu perl). Itu agak lama tetapi itu menciptakan file pengaturan dengan sendirinya dan dapat digunakan dengan opsi baris perintah untuk menyesuaikan kecerahan atau gamma atau keduanya pada saat yang sama. Saya menggunakannya dengan tombol --brightness-up dan --brightness-down untuk tombol kecerahan pada Keyboard saya. Mudah ditugaskan di XFCE4 dan tentunya juga di 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

Pemakaian:

Simpan file di suatu tempat di PATH Anda misalnya

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

Jangan lupa

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

Sebelum dapat menggunakannya, Anda harus mengetik

nvidia-brightness.sh -i

Ini akan membuat file pengaturan dan juga dapat digunakan untuk mengatur ulang kecerahan setiap saat.

Mengetik

nvidia-settings.sh --help

untuk opsi lainnya:

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

Ini terlihat persis apa yang saya cari tetapi saya mendapatkan kesalahan: ERROR: Penugasan penguraian kesalahan '/ Gamma =' (Tidak ada nilai atribut yang ditentukan).
James

1

Jawaban lainnya adalah langkah yang baik untuk dicoba, tetapi perhatikan bahwa beberapa kombinasi Ubuntu / Linux Kernel dan driver Nvidia tidak akan berfungsi. Saya menggunakan 12,04 selama bertahun-tahun, dan meskipun saya mencoba semua jawaban di atas, saya tidak bisa mendapatkan driver Nvidia untuk mendukung peredupan layar pada Macbook Pro 5,5 saya.

Ketika saya akhirnya ditingkatkan ke 14,04, saya mencoba driver Nouveau, yang mendukung peredupan layar, dan secara umum lebih cepat dan lebih dapat diandalkan dan Nvidia. Sayangnya, itu tidak mendukung penangguhan / melanjutkan, membuatnya tidak berguna di laptop. Saya beralih kembali ke Nvidia, tetapi beberapa driver menyebabkan X / lightdm crash, mencegah saya dari bahkan masuk. Saya akhirnya menemukan bahwa driver Nvidia 340 stabil dengan Macbook Pro 5,5 saya dan Ubuntu 14,04 dan juga mendukung peredupan.


1

FYI, baru saja mengerjakan ini pada Lenovo W520, dan penambahan opsi garis sederhana "RegistryDwords" "EnableBrightnessControl = 1"

untuk xorg.conf sudah cukup - tidak perlu untuk semua bogositas lainnya, dan semua berfungsi dengan baik dengan rilis NVidia saat ini (khususnya, menjalankan 346.35)



0

Saya memiliki masalah yang sama di Ubuntu 16.10, setelah memutakhirkan dari 16.04. Dalam file xorg.conf (/ usr / share / doc / xserver-xorg-video-intel /), saya mengubah driver dari "intel" menjadi "nvidia".


2
Terima kasih telah mencoba membantu! Maukah Anda menjelaskan sedikit prosesnya?
earthmeLon

0

Kembali ke kernel linux 4.4 memperbaiki masalah di Macbook Pro saya Akhir 2013 15 ".

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.