Não é possível alterar o brilho em um laptop Lenovo

40

Teclas de ajuste de brilho < Fn + / > não tem efeito (embora eles sejam reconhecidos pelo ambiente), e eu não posso alterar o brilho usando ferramentas GUI também. Isso parece um problema no próprio Linux, não no ambiente de área de trabalho.

Eu posso alterar o brilho no sistema operacional Windows, por isso não é algum tipo de falha de hardware.

Detalhes:
Lenovo B570 (Nome do modelo: 20093)
Placa gráfica Intel HD integrada
Kubuntu 11.04 (Linux 2.6.38-10-genérico, KDE 4.7.0), tudo atualizado Nenhum driver gráfico proprietário (somente Wi-Fi)

O que eu tentei:

  • Edite o /etc/default/grubGRUB_CMDLINE_LINUX_DEFAULT : acpi_osi=Linux , acpi_backlight=vendor , nomodeset . E sim, eu fiz update-grub
  • Edite /etc/X11/xorg.conf (nenhum arquivo, mesmo depois de sudo dpkg-reconfigure xserver-xorg )
  • Edite /proc/acpi/video/VGA/LCD/brightness (nenhum arquivo)
  • sudo setpci -s 00:02.0 F4.B=XX (sem efeito)
  • xbacklight -set XX (" No outputs have backlight property ")

Como posso corrigir esse problema?

    
por Oleh Prypin 15.08.2011 / 22:33

14 respostas

10

Experimente este . Funcionou para o meu Ubuntu 14, Lenovo B570, Intel Graphics.

Abra um terminal e crie o seguinte arquivo de configuração, se não existir:

toque do sudo /usr/share/X11/xorg.conf.d/20-intel.conf

Agora precisamos editar este arquivo. Você pode usar qualquer editor, seja ele terminal ou gráfico.

sudo gedit /usr/share/X11/xorg.conf.d/20-intel.conf

Adicione as seguintes linhas a este arquivo:

Section "Device"
        Identifier  "card0"
        Driver      "intel"
        Option      "Backlight"  "intel_backlight"
        BusID       "PCI:0:2:0"

EndSection

Salve. Efetue logout e faça login novamente.

    
por Ignacio 18.07.2014 / 03:33
32

Se as ferramentas GUI falharem, tente usar o terminal para ele.

  1. Abra um terminal

  2. Executar: ls /sys/class/backlight/*/brightness . Exemplo de saída seria:

    /sys/class/backlight/acpi_video0/brightness
    
  3. Se nada for encontrado, o kernel não suporta controle de brilho (drivers ausentes?). Caso contrário, você pode usar os comandos abaixo (substitua acpi_video0 de acordo):

    • Obtenha o nível de brilho atual:

      cat /sys/class/backlight/acpi_video0/brightness
      
    • Obtenha o nível de brilho máximo:

      cat /sys/class/backlight/acpi_video0/max_brightness
      

    Estes comandos retornam níveis de brilho que variam de zero a max_brightness (veja acima).

  4. Para alterar o nível de brilho, você precisa escrever um número no arquivo brightness . Isso não pode ser feito por um editor como gedit . Digamos que você quer mudar o seu brilho para 5, você tem que executar:

    echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness
    

    Alternativamente, se você quiser apenas definir o nível de brilho como o mais alto disponível:

    sudo tee /sys/class/backlight/acpi_video0/brightness < /sys/class/backlight/acpi_video0/max_brightness
    
por Lekensteyn 18.08.2011 / 14:20
9
  1. Instale linux-kamal-mjgbacklight - um patch para o kernel Linux.

    • Verifique se funcionará para você:
      lsmod | grep ^i915
      Algo como i915 331519 3 deve aparecer. Se não houver saída, isso não funcionará.
    • sudo add-apt-repository ppa:kamalmostafa/linux-kamal-mjgbacklight
    • Instalar atualizações ( sudo apt-get update; sudo apt-get upgrade )
  2. Reinicie.

  3. Agora você pode usar o terminal para ajustar o brilho, como sugerido por Lekensteyn .
    Se não há problema em alterar o brilho com o terminal + sudo , este é o fim da resposta.
    Se você está na área de trabalho do GNOME, o brilho pode até funcionar totalmente já.

  4. Faça o download do meu script changer de brilho , permita que ele seja executado e coloque-o em / usr / local / bin / :
    wget -O brightness http://ideone.com/plain/yPlo5 em chmod +x brightness em sudo mv brightness /usr/local/bin

  5. Temos que permitir que o arquivo de brilho seja editado, para que sudo não seja necessário em todos os lugares.
    Além disso, queremos que a configuração de brilho seja restaurada para a configuração anterior quando o sistema é inicializado (não é salvo por padrão, infelizmente).

    O script brightness mencionado pode lidar com tudo (com o parâmetro restore ), basta adicioná-lo à execução automática.
    Para fazer isso, editaremos /etc/rc.local ( sudo nano /etc/rc.local ou qualquer editor em vez de nano).
    Adicione a seguinte linha antes da linha exit 0 :
    /usr/local/bin/brightness restore

  6. É melhor reiniciar agora.

  7. Portanto, o script brightness funciona. Você pode ir ao terminal a qualquer momento e digitar:

    • brightness - obtém a configuração de brilho atual
    • brightness value - define o brilho para valor
    • brightness inc step , brightness dec step - aumenta ou diminui o brilho por etapa (se não for especificado, um valor padrão é usado no arquivo de configuração, geralmente 10% do brilho máximo)
  8. Agora você pode querer mapear a mudança de brilho para suas teclas de atalho.

    • Defina XF86BrightnessUp como brightness inc
    • Defina XF86BrightnessDown como brightness dec
  9. Se você quiser ajustar alguma coisa, certifique-se de olhar para /etc/bx_brightness.conf
    Você pode alterar a etapa em que o brilho é alterado com brightness inc / dec

Graças a Toz por sua inestimável ajuda em este tópico .

    
por Oleh Prypin 21.08.2011 / 15:29
4

Eu acho que encontrei um efeito fácil e mínimo no caminho das coisas existentes para ajustar o intel_backlight usando as regras do udev.

Eu notei a ação "change" do subsistema "backlight" quando eu pressionava Fn + Acima / Abaixo no meu notebook Lenovo G360 rodando o kernel 3.2. Então eu escrevi as regras de /etc/udev/rules.d/99-writeintelbacklight.rules como abaixo:

ACTION=="change", SUBSYSTEM=="backlight", RUN+="/usr/sbin/writeintelbacklight.sh"

Faça o script de shell /usr/sbin/writeintelbacklight.sh contain:

#!/bin/bash

intelmaxbrightness='cat /sys/class/backlight/intel_backlight/max_brightness'
acpimaxbrightness='cat /sys/class/backlight/acpi_video0/max_brightness'
scale='expr $intelmaxbrightness / $acpimaxbrightness'
acpibrightness='cat /sys/class/backlight/acpi_video0/brightness'
newintelbrightness='expr $acpibrightness \* $scale'
curintelbrightness='cat /sys/class/backlight/intel_backlight/actual_brightness'
if [ "$newintelbrightness" -ne "$curintelbrightness" ]
then
  echo $newintelbrightness > /sys/class/backlight/intel_backlight/brightness
fi
exit 0

Claro, você precisa fazer um sudo chmod +x /usr/sbin/writeintelbacklight.sh .

    
por littlebat 08.06.2012 / 08:00
4

Isto não fará com que suas teclas Fn funcionem, mas você poderá atribuir qualquer outra tecla para ajustar o brilho.

Eu tentei várias dessas soluções, mas nada funcionou para mim até que encontrei este pequeno programa indicador link . Com ele você pode configurar teclas de atalho para controlar o brilho, use a roda do mouse ou selecione em uma lista suspensa no indicador. Eu substitui 'Fn' por 'Win + Alt', que é muito semelhante para as minhas mãos e agora também posso usá-lo com um teclado externo!

Para adicionar o PPA e instalar:

sudo add-apt-repository ppa:indicator-brightness/ppa
sudo apt-get update && sudo apt-get install indicator-brightness

Teclas de atalho devem ser atribuídas a:

/opt/extras.ubuntu.com/indicator-brightness/indicator-brightness-adjust --up

e

/opt/extras.ubuntu.com/indicator-brightness/indicator-brightness-adjust --down

Nota de rodapé: Fora da caixa, o indicador de birghtness reconhece 7 níveis de brilho no meu sistema. Adicionando acpi_backlight=vendor à linha GRUB_CMDLINE_LINUX_DEFAULT em /etc/default/grub , esse número é aumentado para 16!

    
por joelostblom 21.04.2014 / 04:55
4

Eu tenho um id400 z3 da lenovo.

Eu tentei todas as dicas listadas acima, sem sucesso.

Então eu encontrei um diferente que funcionou muito bem:

Coloque a seguinte linha em / etc / default / grub

GRUB_CMDLINE_LINUX="acpi_backlight=vendor acpi_osi=Linux resume=/dev/sdYY"

YY = Área de troca, use swapon -s para ver você trocar o dispositivo.

Execute um update-grub como root

Após a reinicialização, o problema foi resolvido.

    
por Douglas Mugnos 17.08.2015 / 16:44
2

Eu tenho um Thinkpad T450s com gráficos e drivers binários da Nvidia no Ubuntu 14.04. Para obter o funcionamento da luz de fundo, tive que editar o arquivo /etc/X11/xorg.conf adicionando a seguinte linha à definição do dispositivo intel (o arquivo xorg.conf é criado ao instalar os drivers binários):

Option      "Backlight"  "intel_backlight"

A seção completa é agora:

Section "Device"
    Identifier "intel"
    Driver "intel"
    BusID "PCI:0@0:2:0"
    Option "Backlight" "intel_backlight"
    Option "AccelMethod" "SNA"
EndSection
    
por Tor Berg 05.02.2016 / 09:46
1

Eu tive o mesmo problema, estou usando o Gnome3.10 no Ubuntu 14.04 (Unity). Eu instalei o tlp para controle de temperatura no meu laptop. Acabei de remover 'tlp' e reiniciei o meu sistema e consigo ajustar o brilho da tela usando a função (fn) + teclas de seta.

Pode ajudar a verificar uma vez.

    
por Cool Tiger 24.11.2015 / 07:39
1

Teve o mesmo problema (aparentemente) com um Lenovo IP G50-70. - Na verdade, nenhuma das teclas de função 'apareceu' para funcionar. Eventualmente, no BIOS eu encontrei uma função de habilitar / desabilitar 'Hotkey'. Paradoxalmente, foi "Ativado", mas isso na verdade permite uma operação de pressionamento de tecla única para as teclas de função. Na verdade, se você usar a técnica tradicional 'Fn + Function keyX', elas não funcionarão.

Se você 'Desabilitar' a função de tecla de atalho no BIOS, as teclas de função funcionarão como 'esperado' (tecla de função Fn +). - Depois de fazer isso, todas as teclas de função funcionaram bem. Tanto pelo progresso

    
por an_other 27.01.2016 / 19:03
1

Eu tive que adicionar essas linhas ao grub:

acpi_backlight=vendor acpi_osi=linux thinkpad-acpi.brightness_enable=1

Observe esse último. Foi esse que fez as teclas de brilho funcionarem.

    
por Charles Goodwin 06.07.2016 / 12:54
1

Isso não funciona para os usuários do KDE, pois está escrito no link

% bl0ck_qu0te%

No entanto, você pode tentar uma solução alternativa encontrada aqui .

Isso diz para digitar o terminal echo XXX | sudo tee /sys/class/backlight/intel_backlight/brightness , onde XXX é um valor inteiro.

No meu caso, XXX pode ser um valor de 0 a 4882, mas tenha cuidado: se você escrever 0, a tela ficará completamente preta e você não verá nada.

    
por Álvaro 21.11.2011 / 19:37
1

Aqui está um patch que você pode fazer.

Crie este script com o nome .modificarBrillo.sh (no meu caso criei na minha pasta pessoal: ~ / .modificarBrillo.sh)

#!/bin/bash
if [ -z "$1" ]; then
    echo "ERROR: Tiene que introducir un parámetro: \"a\" para aumentar o \"d\" para disminuir"
    exit
else
    if [ "$1" != "a" ] && [ "$1" != "d" ]; then
        echo "ERROR: el parámetro de entrada sólo puede ser o \"a\" para aumentar el brillo o \"d\" para disminuirlo"
        exit
    fi
fi
MAX_BRILLO='cat /sys/class/backlight/intel_backlight/max_brightness'
MIN_BRILLO_ABSOLUTO="0"
MIN_BRILLO="100" #el brillo mínimo puede ser 0 pero eso deja la pantalla completamente a oscuras
INTERVALO='expr $MAX_BRILLO - $MIN_BRILLO_ABSOLUTO'
INTERVALO='expr $INTERVALO / 10'
brillo='cat /sys/class/backlight/intel_backlight/actual_brightness'
if [ "$1" = "a" ]; then
    let "brillo = brillo + INTERVALO"
    if [ "$brillo" -gt "$MAX_BRILLO" ]; then
    let "brillo = MAX_BRILLO"
    fi
else
    let "brillo = brillo - INTERVALO"
        if [ "$brillo" -lt "$MIN_BRILLO" ]; then
            let "brillo = MIN_BRILLO"
        fi
fi
echo "$brillo" | tee /sys/class/backlight/intel_backlight/brightness

No entanto, como o script anterior precisa de permissão de execução e / sys / class / backlight / intel_backlight / brightness só pode ser editado por root e você tem que executar no terminal:

chmod a+x ~/.modificarBrillo.sh
sudo chmod a+w /sys/class/backlight/intel_backlight/brightness'

O último comando deve ser executado a cada inicialização porque as permissões do arquivo de brilho são renovadas com a inicialização. Para fazer isso sudo vim /etc/rc.local e adicione o comando sudo chmod a+w /sys/class/backlight/intel_backlight/brightness antes da linha "exit 0"

Finalmente, você deve instalar o xbindkeys para associar a tecla de função para executar o script.

No meu caso eu adiciono as linhas ao arquivo de configuração ~ / .xbindkeysrc

#Aumentar brillo
"/home/alvaro/.modificarBrillo.sh a"
    m:0x0 + c:233
    XF86MonBrightnessUp 

#Disminuir brillo
"/home/alvaro/.modificarBrillo.sh d"
   XF86MonBrightnessDown

Mas você também pode instalar o programa xbindkeys-config para fazer o processo graficamente.

    
por Álvaro 24.11.2011 / 14:15
1

Edite o arquivo /etc/default/grub e adicione pcie_aspm=force acpi_backlight=vendor depois de GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Em seguida, toda a linha ficará assim:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=force acpi_backlight=vendor"

Para mais detalhes, visite este link .

    
por chirag Hz 13.02.2015 / 21:18
-1

Você pode usar este pacote para lidar com o brilho a partir da linha de comando (terminal), com o xbacklight comando.

xbacklight pode ser instalado no Centro de Software. Ou no terminal:

sudo apt-get update && sudo apt-get install xbacklight

você pode usar

  • xbacklight -inc <range from 0 to 100> para aumentar o brilho com valor < ... >

  • xbacklight -dec <range from 0 to 100> para diminuir o brilho com valor < ... >

por Mohamed Hassan 16.01.2012 / 23:55