Como agendar o script de execução que abre o Firefox [duplicado]

1

Eu tenho o shell script que abre o Firefox e lança macros nele (eu uso um complemento do Firefox chamado Imacros para criar macros). O conteúdo do meu script de shell chamado house.sh é assim:

firefox imacros://run/?m=house.iim

E criei um trabalho agendado via crontab -e para executar esse script de hora em hora todos os dias:

47 * * * * /home/meerim/bin/house.sh

Mas nada aconteceu (o Firefox não abriu). Então eu tentei isso:

47 * * * * env DISPLAY=:0.0 /home/meerim/bin/house.sh

Mas isso não resolveu o problema.
Então, como devo consertar isso?
Meu script house.sh funciona corretamente quando eu o executo no terminal.

    
por Stranger 31.05.2016 / 12:03

1 resposta

1

Você deve conseguir que isso seja executado colocando house.sh :

export DISPLAY=:0.0

e executando xhost + na sua interface. Uma vez que isso funcione, você pode restringir quem tem permissão para se conectar (usando xhost novamente), mas uma vez que as coisas parem de funcionar, você saberá quão permissivo deve ser.

Isso não funcionará se você não estiver logado. Eu corri o firefox a partir de um script python iniciado com o crontab, e a interface real é aberta em uma tela Xvnc independentemente de eu estar logado ou não (e não clobber minha interface do usuário, uma vez que começa a correr).

    
por 31.05.2016 / 12:42