Executar aplicação gráfica no cliente via ssh através de script. [RESOLVIDO]

1. Executar aplicação gráfica no cliente via ssh através de script. [RESOLVIDO]

Danilo Roberto Floriano
dafloria

(usa Ubuntu)

Enviado em 30/08/2013 - 00:04h

Boa noite a todos. Desde já agradeço muito se alguem puder me ajudar.

Preciso que, rodando um script apartir do servidor, uma aplicação (openasb-client) gráfica seja executada no display do micro cliente.

São 11 Celerons 1.x com 512MB de RAM (o server tem 1.5 GB de RAM), Rodando XUbuntu 13.04 com o openasb para gerenciar os munícipes cadastrados.

Já tentei algo como:

sshpass -p xxxx ssh root@192.168.208.130 bash /home/telecentro/openasb.bash (para rodar um script que execute o programa no cliente)

sshpass -p xxxx ssh root@192.168.208.130 openasb-client

sshpass -p xxxx ssh -X telecentro@192.168.208.130 openasb-client (alterando a variável DISPLAY para 0:0, ipcliente:10.0, etc.)

Nada funciona. essa última opção abre a aplicação da máquina cliente, só que no servidor. preciso que a aplicação rode no ambiente gráfico do cliente.

Só para explicar a situação. Sou coordenador de T.I. da Prefeitura da minha cidade, montei um telecentro comunitário baseado em linux (xubunutu com openasb), só que a atendente que colocaram no telecentro é uma senhora que não tem noção nenhuma de windows, muito menos de linux. Cada vez que, por algum motivo qualquer, algum micro perde a conexão com o server ela reinicia o servidor e todos os computadores (outro dia me disse que desligava os micros direto no estabilizador e ligava todos novamente). Já viram o meu drama né...
Preciso criar um script que teste se a conexão com os micros está ok e reconecte se necessário, mas quando preciso reconectar, preciso matar o processo e executar novamente o openasb no cliente. Todo o resto já está funcionando, só falta a questão de executar a aplicação na estação cliente. hoje preciso ir até a máquina e executar um segundo script, mas isso já é demais para essa atendente.

Muito obrigado.



  


2. MELHOR RESPOSTA

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 30/08/2013 - 00:42h

Kra, esse último comando q vc apresentou é o ideal, mas pra funcionar, é preciso q vc execute na máquina da pessoa o comando xhost pra autorizar sua máquina a se conectar no display da máquina da senhora. Não tou lembrado dos parâmetros, mas é bem simples, certeza.

3. Solução.

Danilo Roberto Floriano
dafloria

(usa Ubuntu)

Enviado em 30/08/2013 - 09:53h

Bom dia.

Foi necessário instalar o gdm na estação cliente.

apt-get install gdm

Incluir a linha "DisallowTCP=false" em Security no gdm.conf

liberar o servidor para acessar o ambiente gráfico do cliente.

xhost +ipdoservidor (no cliente)

No servidor (rodando o script) altero a variável DISPLAY para ipdocliente:0.0

E utilizo o comando abaixo:

sshpass -p xxxx ssh -Y usuario@ipdocliente openasb-client &

Obrigado pela dica Renato, deu uma luz para chegar nisso.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts