El Subsistema de Windows para Linux (WSL) es una parte importante de Windows 10. Utilizando una versión de la tecnología de virtualización Hyper-V de Microsoft, le permite ejecutar Linux como si fuera parte de Windows, compartiendo recursos y archivos. Originalmente fue diseñado para desarrolladores que crean aplicaciones web y en la nube, pero se ha convertido en algo mucho más poderoso que reúne dos sistemas operativos muy diferentes.

VER: Guía de seguridad de Kubernetes (PDF gratuito) (República Tecnológica)

Microsoft diseñó originalmente WSL para usar con la línea de comando bash, pero se ha convertido en algo mucho más cercano a una distribución tradicional de Linux. En lugar de usar el conjunto original de correcciones de compatibilidad y traducciones de Microsoft para convertir las llamadas del sistema Linux en llamadas de Windows, ahora usa un kernel de Linux compilado y compatible con Microsoft, inicialmente con la versión 4.19 del kernel, pero implementando ahora una versión más actualizada 5.4. Este cambio mejoró la compatibilidad con las aplicaciones de Linux, y la mayoría se ejecuta sin necesidad de realizar ninguna modificación. Hay algunos problemas: dado que es un subsistema, no se inicia en el arranque, por lo que no hay soporte para tareas o servicios cronometrados usando systemd.

Índice

Más allá de la línea de comandos

La línea de comandos es ideal para gran parte del uso previsto de Linux en Windows por parte de Microsoft (probar código y trabajar con copias locales de pilas de aplicaciones nativas basadas en Linux) utilizando la terminal renovada y mejorada de Windows. Pero los desarrolladores y los usuarios querían más, encontrando formas de traer escritorios familiares de Linux a Windows, utilizando versiones de Windows de servidores X que agregan soporte de gráficos a la mayoría de las distribuciones de Linux.

Con WSL 1, configurar una GUI era un proceso complejo. Los cambios en WSL 2 en la forma en que maneja las redes hicieron que esto fuera aún más difícil, ya que la máquina virtual de Linux ya no compartía una dirección IP con el sistema operativo anfitrión de Windows. En cambio, es una máquina virtual con recursos compartidos que utiliza un conmutador virtual para compartir la tarjeta de red del host. Esto requiere secuencias de comandos para encontrar la dirección IP actual cada vez que inicia WSL y un cambio de modelo de seguridad para cualquier servidor Windows X.

WSL 2 y la GPU

La promesa de Microsoft de un nuevo modelo de GUI para WSL 2 para Holiday 2020 se ha retrasado, probablemente debido a un retraso en el desarrollo del puente WSL 2 Mesa 3D OpenGL/DirectX, que parece ser la clave para la compatibilidad con gráficos de Linux. sin necesidad de nuevos controladores para todas las tarjetas gráficas compatibles con Windows. Si Microsoft y sus socios pueden proporcionar una forma de asignar llamadas OpenGL de Linux a las API de gráficos de Windows, eso debería significar que la compatibilidad con gráficos de WSL 2 funcionará, sin necesidad de cambios en las distribuciones de Linux alojadas en WSL 2 o en Windows.

Con Mesa 3D ofreciendo API OpenGL para Windows y Linux desde un único conjunto de controladores, debería ser posible que Microsoft proporcione un servidor Wayland optimizado para Windows que se pueda instalar desde cualquier repositorio de distribución de Linux. Todo lo que tiene que hacer es descargar el servidor y un entorno de escritorio Linux. La última parte de la ecuación sería una versión de una herramienta como xrdp para entregar un escritorio completo o un conjunto de aplicaciones de Windows seleccionadas a un cliente de escritorio remoto basado en Windows.

Aparte, vale la pena señalar que el socio de Microsoft en su trabajo de puente DirectX/Mesa 3D, Collabora, demostró recientemente un compositor de Wayland en funcionamiento en WINE. Un trabajo como este podría usarse fácilmente para agregar compatibilidad con Wayland en Windows Remote Desktop Tools junto con el propio protocolo RDP de Microsoft.

Usar RDP con WSL 2

Puede hacerse una idea de cómo funcionaría utilizando la nueva versión Ubuntu Community Preview del entorno WSL de Ubuntu, si está utilizando una versión de canal de desarrollo de Windows 10. Ubuntu Community Preview no está disponible en una búsqueda de Windows Store: usted necesita seguir un enlace en los blogs de Ubuntu WSL 2 a una página oculta para descargarlo. No está oculto por ningún motivo nefasto: actualmente es una versión 20.10 para probadores beta y se actualiza regularmente (la próxima versión probablemente será una vista previa de 21.04). Como cada actualización requerirá que restablezcas el entorno WSL 2 de la distribución, no se recomienda su uso diario.

Una de las primeras herramientas probadas por Ubuntu Community Preview es una nueva experiencia lista para usar y un conjunto de herramientas de configuración relacionadas. Estos incluyen la capacidad de preparar Ubuntu para su uso con redes WSL 2 para GUI, mediante la configuración de un script que establece automáticamente las variables de entorno DISPLAY adecuadas. Puede habilitarlo durante la primera configuración de Ubuntu o desde la herramienta de configuración integrada.

Una forma rápida de agregar compatibilidad con GUI es usar xrdp, que es bastante fácil de configurar. Primero use el administrador de paquetes de Ubuntu para instalar un entorno de escritorio. Elegí Kubuntu, pero hay muchas otras opciones populares. Esto agrega muchas aplicaciones basadas en GUI a WSL, así como un entorno de escritorio limpio y moderno que utiliza el lenguaje de diseño de plasma de Kubuntu.

VER: Microsoft 365: una hoja de trucos (PDF gratuito) (República Tecnológica)

La instalación de Kubuntu puede llevar un tiempo, incluso en una PC rápida, ya que tiene que configurar varias bases de datos y archivos de configuración como parte de una instalación. Una vez instalado, todo lo que tiene que hacer es realizar algunos pequeños cambios en los archivos de configuración de xrdp, cambiar el puerto RDP de 3389 y agregar un mejor soporte para pantallas de PC (aumentando la profundidad de color para una mejor imagen) y ejecutar tanto el dbus y el sistema de mensajería xrdp, antes de usar la herramienta Conexión a escritorio remoto de Windows para abrir una pantalla desde WSL 2.

Con RDP y Remote Desktop Connection, puede compartir su portapapeles de Windows con WSL 2, cortando y pegando en terminales que se ejecutan en el escritorio de Kubuntu. Esta es una integración perfecta, ya que WSL 2 en las compilaciones actuales de Insider Dev también expone su sistema de archivos ext4 al Explorador de archivos de Windows. Si bien necesita tener un escritorio completo, y no puede simplemente llevar las ventanas de la aplicación al escritorio de Windows, tener un entorno Linux completo como Kubuntu hace posible comenzar a pensar en flujos de trabajo multiplataforma y cómo puede unir los dos entornos. .

¿El futuro de la WSL?

La GUI de WSL basada en Wayland prometida por Microsoft adoptará un enfoque más orientado a las aplicaciones para Linux, con demostraciones iniciales que muestran aplicaciones de Linux accesibles desde el escritorio de Windows y que se ejecutan en su propio Windows. Si usa Windows Virtual Desktop basado en Azure, debe estar familiarizado con este enfoque, llevando las aplicaciones alojadas a su escritorio mientras se ejecutan en Azure. Puede considerarlo como un enfoque similar a herramientas como la compatibilidad con macOS de Parallels para Windows, con aplicaciones de Windows en macOS Dock.

WSL 2 es un componente importante de Windows 10, que ayuda a Microsoft a traer de vuelta a los desarrolladores a las PC con Windows. La integración de aplicaciones Linux basadas en GUI con el escritorio de Windows debería hacerlo aún más atractivo, especialmente si se puede entregar sin problemas, sin necesidad de controladores específicos de hardware adicionales. Cuanto más fácil, mejor. Con un público objetivo que solo quiere escribir código, romper sin problemas las barreras entre Windows y Linux es fundamental para su futuro.