O servidor SSH atinge o tempo limite do host local e a reatribuição interrompe a saída do X11

O servidor SSH atinge o tempo limite do host local e a reatribuição interrompe a saída do X11

Estou executando um script python em um servidor remoto via SSH, porém no final exijo que ele salve um gráfico usando pyplot, que requer que o servidor X esteja ativo. Como isso funciona há muito tempo, venho usando o comando "screen" e deixando-o e retomando quando voltar. O problema com isso é que a tela retomada tenta enviar para qualquer display X que o SSH estava usando na primeira vez que me conectei (por exemplo, localhost: 15.0), porém muitas vezes, no momento em que retorno, a máquina local ou o servidor me atribuiu um diferente. (por exemplo, localhost:22.0) e, portanto, o código quebra, pois não consegue encontrar nenhum lugar para saída.

Existe alguma maneira de interromper esse tempo limite ou definir qual exibição desejo usar na sessão SSH? Tentei conectar usando -X e -Y e não houve alteração?

Obrigado!

Responder1

Para começar, provavelmente seria melhor usar alguma outra biblioteca de plotagem como matplotlib, que não requer um framebuffer X.

Se você realmente precisa usar o pyplot, tente iniciar o Xvfb (um servidor X virtual) na extremidade remota e aponte a variável $DISPLAY para ele em vez da exibição X encaminhada. Dessa forma ele rodará dentro da tela sem problemas.

informação relacionada