Estoy usando Putty en una máquina con Windows para ssh en otro servidor. Una vez allí, estoy tratando de usar el reenvío X11 para abrir ventanas en mi computadora. El sistema remoto no es el problema, ya que es un sistema grande que muchos otros usuarios utilizan con éxito de esta misma manera.
Entro en el sistema a través de Putty sin problemas y luego ejecuto startxwin
en cygwin. Sin embargo, al ejecutar xterm
Putty, aparece el error xterm Xt error: Can't open display: localhost:##.0
en el que los signos de libra son dos enteros cuyo valor cambia cada vez que inicio sesión.
- Tengo el reenvío X11 habilitado en la configuración de Masilla
- Traté de configurar la "ubicación de visualización X" en
localhost:0
- Me aseguré de descargar el paquete X11 para cygwin
- He intentado usar solo en
startx
lugar destartxwin
- He intentado
setenv DISPLAY localhost:0
ysetenv DISPLAY my.ip.address
Lamentablemente, el problema persiste. He agotado mis recursos de Google en este tema, por lo que agradecería cualquier ayuda. ¡Gracias!
localhost:##.0
¿Qué números reales estás viendo aquí? ¿Qué tipo de software X está ejecutando en la computadora con Windows?Respuestas:
Las actualizaciones recientes de Cygwin han cambiado su servidor X para no escuchar las conexiones TCP de forma predeterminada. En cambio, X de Cygwin usa (la implementación de Cygwin de) sockets de dominio Unix, y PuTTY (como un programa nativo de Windows) no sabe cómo usarlos.
Las preguntas frecuentes de Cygwin X y las listas de correo de Cygwin tienen más detalles.
Mi solución fue tomar el acceso directo estándar de Cygwin que usa startxwin para lanzar X:
y reemplácelo con una invocación directa de xinit con mis opciones deseadas (agregar
-listen tcp
y eliminar-auth
):Esto es menos seguro que los nuevos valores predeterminados de Cygwin; solo debe usarse en un sistema de usuario único, y configurar su firewall para bloquear conexiones a XWin puede ser conveniente.
fuente
Como alternativa a lo que dijo Josh Kelley, también puede editar el archivo startxwin y agregar "-listen tcp" a los argumentos predeterminados del servidor.
Antiguo: defaultserverargs = "- multiwindow"
Nuevo: defaultserverargs = "- multiwindow -listen tcp"
También con la autenticación habilitada, tuve que señalar masilla al archivo de autenticación creado por el script startxwin. La mía se encuentra aquí: c: \ cygwin64 \ home \ USERNAME.Xauthority
Dado que este archivo se vuelve a crear, deberá reiniciar las sesiones de masilla después de restablecer su xserver.
Por seguridad, también puede permitir conexiones desde localhost, ya que aquí es donde la masilla lo reenvía.
fuente
¡Intente establecer la "ubicación de visualización X" en ': 0.0' en su lugar!
Josh Kelley mencionó las preguntas frecuentes de Cygwin X :
fuente
Es para xming, pero ¿quizás esta pregunta es de alguna ayuda? La idea detrás de esto es la misma, pero usar xming en lugar de cygwin en su máquina local. https://wiki.utdallas.edu/wiki/display/FAQ/X11+Forwarding+using+Xming+and+PuTTY
fuente
Como otros han dicho, el truco es agregar
-listen tcp
argumentos al servidor. Sin embargo, recomiendo hacer esto llamandostartxwin -- -listen tcp
para dejarstartxwin
construir el resto delxinit
comando.En un acceso directo del menú Inicio:
fuente