Openbox executar keybind

2

Para ajustar minha luz de fundo, estou usando o comando:

sudo bash -c "echo $backlight_value > /sys/class/backlight/apple_backlight/brightness;"

Agora eu quero configurar uma tecla de atalho para o comando acima via shell script com openbox para ajustar a luz de fundo no meu PC. Para configurar o atalho, procurei pelo arquivo de configuração que é usado pelo openbox:

 $ ps ax | grep openbox
 1194 ?        Sl     0:02 openbox --config-file /home/ubuntu/.config/openbox/lubuntu-rc.xml --sm-save-file /home/ubuntu/.cache/openbox/sessions/1478226066-1194-624962777.obs --sm-no-load
 1958 pts/0    S+     0:00 grep --color=auto openbox

Em seguida eu editei o arquivo de configuração lubuntu-rc.xml e ele funciona (testei):

 <!-- My Keybindings -->
    <keybind key="0xC0">
      <action name="Execute">
        <execute>lxterminal</execute>
      </action>
    </keybind>

Agora quero executar meu script de shell personalizado abaixo. Mas no meu script de shell existem dois comandos (linhas 2 e 5) que precisam de permissões adicionais. Como posso executá-los como root?

#!/bin/bash
curr='cat /sys/class/backlight/apple_backlight/brightness'
if [ $curr -gt 0 ]; then
   curr=$((curr - 1));
   echo $curr > /sys/class/backlight/apple_backlight/brightness;
fi

Eu também alterei privilégios, mas o erro ainda está lá (permissão negada):

ls -l /sys/class/backlight/apple_backlight/
total 0
-rwxrwxr-x 1 ubuntu ubuntu 4096 Nov  4 00:41 brightness

Eu testei apenas o script sem ligação e funciona:

bash /home/ubuntu/Documents/CustomScripts/brightnessDown.sh
    
por Hölderlin 04.11.2016 / 01:10

1 resposta

1

Eu tive que configurar o bit de execução para ambos os scripts:

-rw**x**r-**x**r-- 1 ubuntu ubuntu  189 Nov  4 15:34 brightnessDown.sh
-rw**x**r-**x**r-- 1 ubuntu ubuntu  191 Nov  4 15:36 brightnessUp.sh

Então eu entrei:

sudo chmod 754 ~/Documents/CustomScripts/brightness*.sh

Agora posso executar os dois scripts por meio de atalhos de teclado.

    
por Hölderlin 04.11.2016 / 15:42