(Editado, resposta antiga abaixo)
Com o requisito adicional de fazer tudo isso de A, sem tocar em B, o problema de executar um servidor X em B e conectar-se a ele com um aplicativo em A é que esse servidor X utilizará apenas dispositivos de entrada ( teclado, mouse) conectado a B. Então, para usar seu aplicativo, você teria que usar esses dispositivos de entrada, o que você não quer.
Em princípio, você poderia tentar compartilhar os dispositivos de entrada de A, mas a construção realmente começa a ficar bizantina ...
Então VNC é muito mais fácil nesta situação.
Configure um vnc4server
em A. Este servidor também atuará como servidor X para aplicativos em A. Inicie um xvnc4viewer
em A e use-o para iniciar e controlar seu aplicativo. Inicie outro vncviewer em B e conecte-o ao servidor em A, ele exibirá o aplicativo. Pode ser tão simples quanto directvnc
(use o framebuffer do RaspPi diretamente, nenhum desvio adicional sobre o X, portanto menos carga de trabalho para o RaspPi), ou se você quer continuar rodando um servidor X existente no B, anoth xvnc4viewer
.
A maneira mais fácil é usar uma área de trabalho remota como VNC , muito provavelmente já disponível como um pacote em sua distribuição. Isso funciona normalmente muito melhor que o X encaminhamento via ssh ou de outra forma, porque é muito melhor comprimido e não usa primitivas X no fio.
É claro que também existem várias maneiras de configurar o encaminhamento do X, por meio do ssh ou diretamente. Por exemplo, você pode fazer login via ssh -X
de B para A, executar seu aplicativo em A e ter a saída exibida em B. (Você descartou a direção inversa, mas não disse nada sobre isso, então eu ' Não tenho certeza se você quer isso).
Você também pode configurar o servidor X para uma sessão remota via XDMCP . Ou faça um único aplicativo usar um servidor X remoto usando as configurações xauth
e DISPLAY
adequadas.
Mas eu ainda recomendo testar o VNC primeiro.