“Chave MIT-MAGIC-COOKIE-1 inválida” ao tentar executar o programa remotamente

21

Estou tentando executar um aplicativo (ParaView) no modo cliente-servidor, com sua renderização gráfica sendo feita no lado remoto (servidor). Estou usando o SSH como meio de conexão com o servidor, mas não desejo usar o encaminhamento de X, pois isso atrasa o processo de renderização.

No entanto, toda vez que tento abrir o aplicativo na tela do servidor, recebo um erro nesse sentido:

Invalid MIT-MAGIC-COOKIE-1 keyError: cannot open display ':0'

Realizei uma extensa pesquisa sobre esse assunto e já tentei o seguinte procedimento sugerido sem sucesso:

  1. Usei a "lista xauth" para obter o valor MIT-MAGIC-COOKIE-1 para a exibição do meu host local.
  2. Conectado ao host remoto via ssh.
  3. Utilizado "export DISPLAY =: 0" no host remoto.
  4. No host remoto, use "xauth add" para substituir o valor do cookie da exibição do host remoto pelo valor do host local.

Estou convencido de que esse é o procedimento correto, mas não estou transferindo os cookies certos para as telas corretas.

Mais uma vez, eu gostaria de poder usar o ssh para efetivar a abertura de aplicativos na tela do computador remoto. Idealmente, eu gostaria que todo o processo fosse realizado via xauth em vez de xhost e, mais uma vez, não preciso usar o encaminhamento de X. O que posso estar faltando ou fazendo errado?

CS6394
fonte
2
Existe um servidor X em execução no console do servidor? Não entendo onde você deseja que a saída do programa seja exibida. Seu procedimento está claramente errado, pois você está recebendo o cookie do host local, mas não é exibido no host local. Se houver um servidor X em execução na máquina remota e for onde você deseja que o programa seja exibido, consulte unix.stackexchange.com/questions/10121/…
Gilles 'SO- deixa de ser mau'

Respostas:

13

O valor para o qual você está usando DISPLAYestá incorreto: se você não deseja usar o encaminhamento SSH X, DISPLAYdeve indicar o endereço IP do seu servidor X (a área de trabalho na qual deseja exibir os programas). No controle remoto, execute

export DISPLAY=desktop:0

substituindo desktoppor seu nome de host ou endereço IP local. Você também pode precisar alterar a configuração do servidor X para permitir conexões IP remotas.

Stephen Kitt
fonte
1
Isso ignora o problema XAUTHORITY, que é o que causa a mensagem de erro real na linha de assunto.
kiko
7

Experimentar

xhost +local: 

antes de executá-lo.

Jeff Schaller
fonte
fez o truque. Obrigado, acho que é a resposta mais curta!
loved.by.Jesus
1

Este funcionou para mim. Então, eu estou deixando esta resposta aqui.

 export DISPLAY=:1.0
PSN
fonte
0

Para mim, o erro foi:

Invalid MIT-MAGIC-COOKIE-1 keyxcb_connection_has_error() returned true
Invalid MIT-MAGIC-COOKIE-1 keyERROR: Unable to create GUI. Exiting

Joguei com o .Xauthority, mas ele não fez nada além de ocultar a parte "MIT cookie", não o erro xcb_connection. No final, funcionou apenas usando o @PSN answer ( export DISPLAY=:1.0).

Estou no debian 9.

marrco
fonte