Como alterar o brilho antes de efetuar login?

3

Sempre que eu inicializo, o brilho é definido como cheio. Eu leio este e faço mudanças para que ele faça não redefinir toda vez que eu inicializo no meu laptop.

Mas antes disso, eu tentei mudar o brilho antes do login, mas os botões de brilho só funcionam quando eu logar. Então, depois do meu problema de Brilho é redefinido para o máximo em cada reinicialização é resolvido, eu só quero saber alguma maneira de alterar o brilho logo após o sistema operacional começar, isso é antes do login.

    
por Siraj 28.02.2017 / 06:58

1 resposta

2

A execução de um script antes ou uma vez aparece a tela de login

Existem duas maneiras de abordar isso:

  1. Coloque o comando ou chame o script em /etc/rc.local . Por exemplo

    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    
    # path to my script. Note the & at the end, it's important
    /home/serg/bin/brightness_set.sh &
    exit 0
    
  2. A tela de login é, na verdade, conhecida como gerenciador de desktop, e o Ubuntu em particular usa lightdm desktop manager. Seu arquivo de configuração /etc/lightdm/lightdm.conf pode usar o parâmetro greeter-setup-script= para executar algo antes que a tela de login apareça. Por exemplo, você poderia fazer:

    [Seat:*]
    greeter-setup-script=/opt/set_brightness.py
    

    OBSERVAÇÃO: versões mais antigas do cabeçalho [SeatDefaults] estão obsoletas agora, use [Seat:*] . Além disso, se você nunca editou /etc/lightdm/lightdm.conf estará em branco - esse é o comportamento normal desde a versão 14.04 do Ubuntu.

Controlando o brilho:

A configuração do brilho terá que ser feita escrevendo para o arquivo brightness no diretório /sys/class/backlight/<NAME> . Existem diferentes <NAME> de versões diferentes do que pode aparecer, por exemplo, o meu é /sys/class/backlight/intel_backlight , então você precisará descobrir o nome que seu próprio computador usa ou, alternativamente, usar /sys/class/backlight/*/brightness . Há também o arquivo max_brightness no mesmo local, que você pode usar como valor de 100% para calcular o brilho a ser definido. Ambos os arquivos aceitam valor inteiro.

Uma forma comum de escrever nesse arquivo é via echo 123 | sudo tee /sys/class/backlight/*/brightness da linha de comando. Se você estiver executando um script via /etc/rc.local ou via greeter-setup-script= parâmetro mencionado acima, sudo não é necessário, como ambos os métodos executam scripts com root privillege (que também é importante lembrar por razões de segurança, portanto assegure-se de que seu script seja acessível apenas ao seu usuário ou root apenas) .

Existem também alternativas para escrever em /sys , mas nem todas são boas. Na minha experiência, xbacklight não funciona para usuários do Ubuntu e xrandr --output SCREEN_NAME --brightness INT é apenas uma solução de software (isto é, não diminui a potência da tela, apenas faz a tela tornar a cor mais escura).

Recursos adicionais

por Sergiy Kolodyazhnyy 28.02.2017 / 07:55