startx gnome-session -- :1 tty8
Se você executar este comando em uma sessão ssh -X
, você não conseguirá um gnome-session
remoto para você mesmo. Em vez disso, você está efetivamente tentando iniciar remotamente uma sessão do GNOME no console tty8
virtual do host remoto, para quem quer que esteja sentado nesse computador.
Em vez disso, você deve primeiro configurar as chaves SSH para poder executar comandos em seu host remoto em sua própria conta, sem solicitar uma senha ou frase secreta de chave SSH. Então você executaria algo parecido com este no seu sistema local :
startx ssh -X <remote host> gnome-session -- :1 tty8
Pode ser necessário adicionar &
ao final para que o comando seja executado em segundo plano.
Basicamente, você vai querer:
1) um servidor X no seu tty8, rodando como seu processo de sessão ...
2) ... a conexão SSH X-forwarding para o host remoto, onde ...
3) ... o gnome-session
é iniciado e passará suas exibições de volta pela conexão SSH de volta para o servidor X "vazio" em seu tty8 local.
Note que se o GNOME usa recursos avançados de aceleração 3D da GPU para renderizar seu desktop, ele estará usando renderização direta (= acesso direto à memória entre o gerenciador de janelas GNOME e o servidor X) quando rodando localmente. Ao executar uma sessão remota como essa, a renderização direta não será possível (já que a GPU não está no mesmo computador que o processo do gerenciador de janelas!), O que pode desacelerar as coisas. Nesse caso, você pode ter que escolher um gerenciador de janelas mais simples.
O XDMCP é um protocolo para controlar terminais X11: dispositivos de computador despojados cujo único trabalho é atuar como um monitor + mouse + teclado X11 para algum outro computador. O protocolo XDMCP foi desenvolvido antes do SSH e é completamente inseguro. Ele não se aplica ao seu caso, a menos que você configure especificamente o gerenciador de exibição (o gdm
, kdm
, xdm
ou qualquer outro *dm
) como compatível com XDMCP, pois o XDMCP está desativado por padrão em sistemas modernos porque não é seguro. Se você fez isso, então poderia dizer a startx
para fazer seu servidor X local fingir que é um terminal X11, e fazer uma conexão direta, não criptografada, não-SSH-forwarded para o host remoto. (Apenas diga "não".)
O aninhamento X, por outro lado, permitiria, por exemplo, tem uma única janela grande em sua sessão X11 local regular em: 0.0 (ou tty7
), que conteria a sessão da área de trabalho remota.