Te traemos el hallazgo a este atascamiento, al menos eso deseamos. Si sigues con preguntas puedes dejarlo en el apartado de comentarios, que con gusto te responderemos
Solución:
En el shell de WSL, asegúrese de haber exportado la PANTALLA completamente calificada
export DISPLAY=localhost:0.0
El seguimiento No funciona:
export DISPLAY=:0.0
:0.0 se basa en un socket de dominio UNIX (en lugar de un socket TCP/IP) y, de alguna manera, el reenvío X no se conecta correctamente. Yo tuve el mismo problema.
actualización: wsl2 es casi lo mismo, pero al usar VcXsrv, debe verificar el disable access control
caja.
Esto es definitivamente posible dada su configuración actual. Tenga en cuenta que también tiene la opción de usar Putty, pero de cualquier manera, necesitará tener un servidor X ejecutándose en la máquina cliente, su subsistema de Windows para Linux: WSL. El modelo cliente-servidor del sistema de ventanas X es en parte lo que hace que el reenvío de X sea tan fácil de lograr. Todo lo que necesita es un servidor X que se ejecute en el host y el cliente.
Configuración de Raspberry Pi (Host)
Primero, deberá realizar un pequeño ajuste de configuración en su servidor SSH en la máquina host (su Raspberry Pi). Primero, encuentre su sshd_config archivo dentro del etc. directorio. Puede ejecutar estos comandos haciendo ssh en la Raspberry Pi (con una cuenta compatible con sudo), o accediendo a la Pi directamente y luego abriendo una terminal.
Una vez que esté dentro, ejecute el comando:
cd /etc/ssh
Haga una copia de seguridad de su archivo de configuración sshd:
cp sshd_config sshd_config.ORIG
Ahora abre el original archivo en un editor de texto con:
sudo nano sshd_config
Puede elegir cualquier editor de texto con el que se sienta cómodo (consulte aquí los accesos directos del editor de texto nano). Este es el archivo de configuración principal para el servidor ssh. Busque y descomente las siguientes líneas:
X11Forwarding yes
X11UseForwarding yes
Guardar y Salir. Ahora deberá reiniciar el servidor SSH de su Pi con:
sudo systemctl restart sshd
Configuración de Windows (cliente)
Has terminado con tu anfitrión. Ahora todo lo que necesita hacer es instalar un servidor X para Windows. Hay algunas opciones para elegir, pero yo elegiría Cygwin X, que puedes descargar aquí. Instálelo y una vez que lo ejecute, debería generar una pequeña ventana en su cliente que se utilizará para mostrar el programa X. Ahora puede probar que el reenvío de X está ocurriendo volviendo a su shell de WSL y ejecutando el comando simple:
xclock
Debería aparecer un reloj simple en la ventana generada por Cygwin. Puede finalizar el reloj volviendo a su shell WSL y presionando Ctrl+C. Si no se reconoce este comando, es posible que primero deba instalar aplicaciones de gráficos x11 en la máquina host con:
sudo apt-get install x11-apps
El reenvío X ahora debería estar habilitado para usted y ahora puede ejecutar la mayoría, si no todas, las aplicaciones de su Raspberry Pi desde Windows.
Nota sobre XDMCP, FreeNX
Es posible que desee llevar las cosas un paso más allá y configurar las cosas para ejecutar un entorno de escritorio completo desde su Pi en lugar de solo aplicación por aplicación, que es lo que permite el reenvío X. Aquí hay un par de opciones comunes disponibles para usted:
- XDMCP: este es el más fácil de configurar, pero es notoriamente inseguro y la mayoría de las autoridades solo recomiendan que lo ejecute en una LAN cableada confiable (como su red doméstica). Esto puede ser más problemático de lo que vale, pero si tiene curiosidad por investigarlo, consulte este hilo de Rasp Pi para la configuración inicial.
- FreeNX: más seguro que XDMCP y probablemente valga la pena configurarlo si desea hacerlo regularmente y posiblemente desde otra red por completo. Deberá instalar un servidor FreeNX en el host y luego usar otra pieza de software: Sin máquina – en su cliente de Windows. Ver aquí para una guía muy detallada.
X11 considera que la máquina que MUESTRA la interfaz gráfica es el SERVIDOR X Windows, y la máquina que proporciona la información a mostrar como el CLIENTE X Windows. Esto es lo contrario de la relación cliente/servidor habitual. Piense en la máquina local (la que tiene la pantalla física) como la servidor de gráficos y la máquina remota como la cliente de gráficos.
Eres capaz de corroborar nuestra faena dejando un comentario y puntuándolo te estamos eternamente agradecidos.