Executar um aplicativo GUI no computador remoto a partir do SSH


10

Quero executar um aplicativo GUI no meu computador Ubuntu, mas ele deve ser iniciado por um shell script no meu servidor Debian através do SSH.

Isso é possível?


1
Parece que há um pouco de confusão sobre o que você está tentando fazer. Você está tentando executar um programa da GUI em um host remoto, mas a janela da GUI aparece no seu host local? Ou você está tentando executar um aplicativo localmente (e a janela aparece localmente), mas foi acionado remotamente?
pkaeding

@pkaeding bem, se houver duas interpretações, ambas úteis, então você pode responder pelas duas. Você sabe? Alguém já comentou a pergunta sobre uma dessas interpretações "Alexander escreveu" Já faz um tempo, mas talvez você ainda se lembre se conseguiu iniciar o TeamViewer a partir do ssh. Eu gostaria que você pudesse compartilhar mais detalhes sobre como você fez isso. . Graças"<--- Então, se você conheceu e respondeu por tanto, que poderia ter ele e outros ajudaram.
barlop

Respostas:


4

Algo assim deve funcionar:

#on your desktop 
xhost + #not secure, make sure your X isn't listening on any tcp ports.
echo 'export DISPLAY=:0; x-command-you-want &' > ~/run-command
chmod +x ~/run-command
#on your server
ssh user@desktop '~/run-command'

2

Isso funciona para mim quando estou no ssh:

export DISPLAY=:0; nohup iceweasel &>/dev/null &

0

Sim, isso é possível. Você só precisará encaminhar o tráfego X através da conexão SSH. Por exemplo, conecte-se assim:

debian-computer:$ ssh -X username@ubuntu-computer

Em seguida, basta iniciar o aplicativo a partir do prompt SSH. A janela da GUI aparecerá na sua caixa debian (na qual você está conectado localmente). Todo o processamento será feito pelo computador remoto (o ubuntu).

Observe que isso só funcionará se você tiver um servidor X window em execução no seu computador local. Definitivamente, será esse o caso se você tiver uma instalação linux / unix na área de trabalho e também puder instalar servidores X no Mac OS e Windows, mas eles não serão instalados por padrão.


Ele queria que o servidor executasse um programa GUI na área de trabalho, também conhecido como servidor, que se conecte à área de trabalho e execute o programa.
OneOfOne

0

Obrigado por suas respostas. Nesse meio tempo, tentei outras coisas e uma delas foi fazer uma conexão SSH com o computador Ubuntu e executar um script nessa máquina.

Em uma das primeiras linhas desse script, defini a exibição EXPORT. O jogador sabe agora que exibição ele deve usar.

Obrigado novamente.


Oi. Já faz um tempo, mas talvez você ainda se lembre se conseguiu iniciar o TeamViewer a partir do ssh. Eu gostaria que você pudesse compartilhar mais detalhes sobre como você fez isso. Obrigado.
21813 Alexander Chertov
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.