Eu uso o Cygwin / X para o ssh em um cluster de computador linux usando um pc do Windows (10). Ontem eu estava no meio de uma sessão ssh usando o encaminhamento do X11. De repente, uma das janelas do X abertas começou a travar e, eventualmente, meu sistema operacional Windows notou isso e matou o processo do X Server.
Antes desta sessão eu sempre tive que usar os comandos do terminal:
export DISPLAY=:0.0
ssh -Y <user>@<remoteaddress>
para configurar a conexão e eu seria capaz de abrir o X Windows a partir do cluster remoto no meu monitor local. Sempre que eu passava o ícone do Cygwin / XServer na bandeja do sistema do Windows, ele sempre mostrava Cygwin/X Server:0.0
.
No entanto, após o travamento do X Server (e algum travamento subsequente, que foi interrompido apenas pela reinstalação dos pacotes X11 do Cygwin), acho que o valor padrão agora é :3.0
(encontrado na bandeja do sistema).
Se isso ajudar, eu notei algumas diferenças entre os vários arquivos de log dos arquivos de log do xwin encontrados em ~/var/log/xwin/
:
Em XWin.3.log
, o arquivo de log termina em:
winDeinitMultiWindowWM - Noting shutdown in progress [ 40421.515] (II) Server terminated successfully (0). Closing log file.
Mas nos registros 0, 1 e 2 correspondentes, os arquivos não têm essa terminação, mas apenas terminam em
//For 0:// IsOverrideRedirect: Failed to get window attributes [243761.625] OS has icon alpha channel support: yes
//For 1:// winInitMultiWindowWM - Could not open display, try: 1, sleeping: 5
//For 2:// winInitMultiWindowWM - DISPLAY=:2.0 [ 15564.281] winMultiWindowXMsgProc - DISPLAY=:2.0
Embora meu ssh ainda funcione perfeitamente, eu queria saber se alguém sabia por que os DISPLAYs: 0.0,: 1.0 e: 2.0 não estão mais acessíveis / funcionando e, além disso, como eu poderia redefini-los (para poder usar: 0.0 de novo)?
(P.S. Deixe-me saber se eu não incluí as informações apropriadas, e peço desculpas se a minha formatação não é tão fácil de riscar - esta é a minha primeira vez postando uma pergunta no Stackexchange!)
UPDATE:
Caso alguém mais esteja lendo isso com o mesmo problema.
Após algumas análises do arquivo startxwin
em C:\cygwin64\bin\
, identifiquei que a escolha de DISPLAY escolhida pelo X Server na inicialização depende da presença de .X<number>-lock
arquivos em C:\cygwin64\tmp\
(o script inicia com um valor de 0, se encontrar um arquivo .X0-lock
, esse número será incrementado até que um número de exibição "livre" seja encontrado, esse número será usado então. Além disso, na pasta ~\tmp
também existe uma pasta .X11-unix
que deve estar vazia (desde que o servidor X esteja desligado) na operação normal. Em ambos os casos, descobri que existiam arquivos nesses locais para os DISPLAYs 0, 1 e 2. Desinstalando o Cygwin / X11, removendo esses arquivos da pasta C:\cygwin64\
(para referência, se necessário) e reinstalando o Cygwin / X11, obtive êxito conseguiu fazer com que o servidor X iniciasse com a variável padrão DISPLAY de :0.0
novamente.
Dito isto, duvido que tenha feito algo para impedir que isso aconteça novamente - se alguém tiver alguma idéia, por favor, compartilhe seus pensamentos!