Como faço para que os controles de brilho da luz de fundo da tela do meu laptop funcionem?

5

O que preciso fazer para que os controles de brilho da luz de fundo da tela do meu laptop funcionem? Atualmente tenho o Ubuntu 13.04 e um Dell Studio 1558.

Depois de ler estes dois links:

link
link

Eu tentei o seguinte, eu mudo as permissões (desde que eu estava tendo erros para editar os arquivos)

sudo chmod a+w /sys/class/backlight/intel_backlight/brightness

Em seguida, eu sobrei o arquivo com 1000 (aparece max_brightness is 4882 )

sudo echo 1000 > /sys/class/backlight/intel_backlight/brightness

E eis que minha tela escureceu.

Eu já ajustei isso antes, não sei exatamente como e não sei por que tive que alterar as permissões no arquivo novamente, se fizesse isso antes.

Como posso ajustar o brilho com as teclas padrão?

    
por Aaron Hall 16.01.2014 / 08:08

3 respostas

5

xbacklight

$ xbacklight +30% # increases brightness by 30 percent
$ xbacklight -30% # decreases brightness by 30 percent

caminho dbus

$ dbus-send --session --print-reply \
      --dest="org.gnome.SettingsDaemon" \
      /org/gnome/SettingsDaemon/Power \
      org.gnome.SettingsDaemon.Power.Screen.SetPercentage \
      uint32:<percentage>
Exemplo

Defina o brilho para 30%:

$ dbus-send --session --print-reply \
      --dest="org.gnome.SettingsDaemon" \
      /org/gnome/SettingsDaemon/Power \
      org.gnome.SettingsDaemon.Power.Screen.SetPercentage \
      uint32:30 

Ou
Para diminuir o brilho por um passo (~ 7)

$ dbus-send --session --print-reply \
      --dest="org.gnome.SettingsDaemon" \
      /org/gnome/SettingsDaemon/Power \
      org.gnome.SettingsDaemon.Power.Screen.StepDown

Para aumentar o brilho em um passo (~ 7)

$ dbus-send --session --print-reply \
      --dest="org.gnome.SettingsDaemon" \
      /org/gnome/SettingsDaemon/Power \
      org.gnome.SettingsDaemon.Power.Screen.StepUp

Se ele disser da seguinte maneira, seu sistema operacional pode ser muito antigo. Em seguida, use xdotool :

Error org.freedesktop.DBus.Error.UnknownMethod: 
Method "SetPercentage" with signature "u" on interface 
"org.gnome.SettingsDaemon.Power.Screen" doesn't exist

xdotool

  • Aumentar o brilho:

    $ xdotool key XF86MonBrightnessUp
    
  • Diminuir o brilho:

    $ xdotool key XF86MonBrightnessDown
    
por 16.01.2014 / 10:20
1

Bem, eu na verdade não fiz o que a resposta aceita diz. Esta é uma função no meu .bashrc :

bright () { sudo sh -c "echo $1 > /sys/class/backlight/intel_backlight/brightness " ; }

Eu uso assim -

Brilho total:

$ bright 4882

Cerca de um décimo brilho:

$ bright 482

E como a função usa o sudo, eu tenho que digitar minha senha, o que é ok para mim.

    
por 15.12.2015 / 15:03
0

Aqui 2 scripts alternativos.

Salve-o como brightness_change.sh e coloque-o em uma pasta que faz parte de sua variável de ambiente $ PATH. O uso é simples: brightness_change.sh up / brightness_change.sh down .

Você pode então atribuir o script a uma associação de teclas, apenas tome cuidado para especificar o caminho completo para o comando.

1. Script DBUS (para o gnome)

Eu prefiro a abordagem do Dbus porque:

  • você não precisa de permissão especial para alterar o brilho
  • as alterações de brilho feitas pelo script são refletidas no applet de brilho

Aqui o script

#!/bin/bash
function up(){
    dbus-send --session --type="method_call"  --dest="org.gnome.SettingsDaemon" /org/gnome/SettingsDaemon/Power org.gnome.SettingsDaemon.Power.Screen.StepUp
}

function down(){    
    dbus-send --session --type="method_call" --dest="org.gnome.SettingsDaemon" "/org/gnome/SettingsDaemon/Power" "org.gnome.SettingsDaemon.Power.Screen.StepDown"
}

if [[ $1 = "up" ]]
then
     up
elif [[ $1 = "down" ]]
then        
    down
fi

2. Usando o / sys / files

Usar este método requer que você altere a permissão do arquivo de destino em / sys / (cada inicialização) ou você pode ter o comando para /etc/sudoers para não exigir senhas

Eu não sabia ao certo como implementar o primeiro caminho, por isso adicionei essa linha ao /etc/sudoers (onde fra é meu usuário)

fra ALL=(ALL) NOPASSWD:/home/fra/bin/bright_change.sh

Agora você pode chamar o comando com o sudo sem que você seja solicitado a digitar a senha (com certeza um buraco na segurança, então cuide disso)

#!/bin/bash
file="/sys/class/backlight/intel_backlight/brightness"
level=$(cat $file)
inc=100

if [ $level -lt "600" ]
then
    inc=50
fi

function up(){
    newlevel=$(($level+$inc))
    echo $newlevel
}

function down(){    
    newlevel=$(($level-$inc))

    if [ $newlevel -lt "10" ]
    then
        newlevel=1
    elif [ $newlevel -lt "100" ]
    then
        newlevel=10
    fi
    echo $newlevel
}


if [[ $1 = "up" ]]
then
     newlevel=$(up)
elif [[ $1 = "down" ]]
then        
    newlevel=$(down)
fi  


echo $newlevel
# echo $level

echo $newlevel > $file
    
por 29.06.2016 / 04:10

Tags