Linux en un entorno de desarrollo principalmente de Windows

8

Un poco de historia: nuestra tienda tradicionalmente ha ejecutado una pila de software de Microsoft, pero ahora estamos planeando usar Linux incorporado y me encuentro en el papel de Columbus: conquistar el nuevo mundo. Menciono esto porque significa que me falta el contexto para interpretar lo que puede pensar que es una respuesta simple. Si puede explicar las cosas en comparación con el funcionamiento de Windows, esto será de gran ayuda para la comprensión.

Si he entendido correctamente la idea de X-Windows, una aplicación es un cliente X y las API de ventanas envían / ​​reciben mensajes de IU a un servidor X a través de un socket TCP (envía comandos de dibujo de ventana al servidor X y recibe el mouse y mensajes de actividad del teclado).

Según tengo entendido, el uso de sockets significa que el código de la aplicación puede ejecutarse en un cuadro de Unix mientras que la IU se ejecuta en un servidor X que se ejecuta en (por ejemplo) cualquiera de

  • la misma computadora
  • otra caja de Unix que ejecuta X-server en la misma red
  • una caja de Windows 'W' que ejecuta X-server en la misma red
  • cualquier caja que ejecute un servidor X en cualquier lugar de Internet siempre que los cortafuegos y el enrutamiento estén configurados adecuadamente para permitir los sockets necesarios.

En mi escritorio tengo un host Linux Mint13 que usa el escritorio Cinnamon y se llama ForwardUntoDawn . Está conectado a mi red 192.168.174 como 35, y mi Win7 está en la misma red que 11. Pueden hacer ping entre sí, y SAMBA permite compartir archivos entre ellos. He instalado telnetd y sshd en ForwardUntoDawn y puedo establecer desde Win7 sesiones telnet y ssh, y autenticarme para obtener una línea de comando.

En mi sistema Win7 tengo instalado Xming con íconos de escritorio Xming y Xlaunch. Al ejecutar Xlaunch, respondo las indicaciones de la siguiente manera:

  • Múltiples ventanas / pantalla 0
  • Iniciar programa: gimp usando SSH (C: \ Cygwin \ bin \ SSH.exe)
  • Portapapeles sí, sin servidor de fuentes o params

Esto produce momentáneamente una ventana de comando negra pero desaparece antes de que pueda leer el mensaje.

¿Alguien puede guiarme en los próximos pasos o respuestas más apropiadas a las necesidades de Xming? (Elegí gimp solo porque sé que está instalado y funcionando).

Tenga en cuenta que para usar la respuesta a continuación también lea los comentarios y NOTA: debe iniciar su cygwin xserver usando cygwin \ bin \ startxwin.exe para que funcione, imagino que esto inicializa algunas variables de entorno.


No terminé usando Xming. Después de que configuré los ajustes de ssh en el cuadro de Linux y logré usar las herramientas de Cygwin, volví a usar Xming. Las aplicaciones iniciadas usando Xlaunch comenzarían pero luego desaparecerían abruptamente. El problema no ocurrió usando estrictamente las herramientas de Cygwin.

Peter Wone
fuente

Respuestas:

3

No sé cuáles son los valores predeterminados para SSH.EXE de cygwin, pero para openssh lo predeterminado es no habilitar el reenvío X11.

Ese valor predeterminado se puede anular modificando el archivo de configuración del cliente ssh (por ejemplo, ~ / .ssh / config en un cuadro de unix / linux) o utilizando la -Xopción en la línea de comando ssh, por ejemplossh -X remotehost gimp

Puede valer la pena verificar si cygwin SSH.exe tiene la misma opción predeterminada y / o la misma o similar.

Por cierto, ¿qué sucede cuando ssh al cuadro Mint y luego se ejecuta gimpdesde la línea de comandos? si no funciona, intente nuevamente con -X.

Finalmente, es posible que desee probar la masilla como su cliente ssh en el cuadro de Windows.

cas
fuente
Cuando hago un ssh al cuadro Mint y luego ejecuto gimp desde la línea de comando, dice Error: No se puede abrir la pantalla:
Peter Wone
OK, eso dice que necesita habilitar el reenvío X11 a través de su conexión ssh. Con openssh, lo usa -Xen la línea de comando ssh. Probablemente sea igual o similar en cygwin ssh. La siguiente URL indica que es casi idéntica: x.cygwin.com/docs/ug/using-remote-apps.html
cas
Cuando hago lo mismo desde una línea de comando "ssh -l mylogin -X 192.168.174.35 gimp" obtengo lo mismo excepto que no tiene el prefijo "Error:
Peter Wone
también, marque /etc/ssh/sshd_configla casilla Mint y asegúrese de que el reenvío X11 esté permitido conX11Forwarding yes
cas
Habilitando el reenvío X11, ¿hago esto en el cuadro donde se ejecuta el servidor X (Win7) o donde se ejecuta el cliente (gimp en Mint13)?
Peter Wone