Hace una semana os hablábamos de cómo Microsoft había anunciado una de las grandes novedades de Windows 10: la posibilidad de hacer uso de una consola Linux de forma nativa en este sistema operativo gracias a la colaboración de Canonical, la empresa responsable del desarrollo de Ubuntu.
Esa opción está disponible desde hace unas horas gracias a la llegada de la compilación 14316 de Windows 10, en la que aparte de otras novedades podremos comenzar a usar la consola bash de Ubuntu directamente en Windows 10. Si sois Windows Insiders y estáis dentro del anillo de actualizaciones rápido, ya podéis aplicar esa actualización y disfrutar de esa consola fácilmente. Esta ha sido nuestra experiencia al aprovechar esta característica.
Instala la opción en 2 minutos
En Microsoft explican el proceso de instalación de esta característica de forma clara y concisa. En primer lugar tendremos que activar el 'Developer mode' en Settings -> Update & security -> For developers.
Una vez hecho esto nos vamos a activar una nueva característica de Windows ('Turn Windows Features on or off'), y en la nueva ventana bajamos hasta ver la opción "Windows Subsystem for Linux (Beta)". Al activarla y pinchar en OK aparecerá un mensaje que nos indica que debemos reiniciar nuestro ordenador, por lo que aceptamos para proceder a ese proceso de reinicio.
Una vez de nuevo en Windows tendremos que ejecutar un Powershell y una vez dentro escribir 'bash' (sin comillas) y pulsar Enter. Al hacerlo se nos indicará que tenemos que aceptar los términos de licencia de la imagen Ubuntu proporcionada por Canonical, y si lo hacemos el sistema procederá a descargar e instalar esa imagen. Cuando termine el proceso podemos cerrar esa ventana y ya tendremos acceso a esa nueva y singular aplicación llamada "Bash on Ubuntu on Windows".
Bash de Ubuntu, así es usar la consola en Windows
Una consola Linux en mi escritorio
Si accedemos al menú de inicio y escribimos 'bash' veremos cómo aparece el acceso a esa aplicación de escritorio. Al pinchar sobre esa herramienta aparecerá inmediatamente una nueva ventana llamada 'Bash on Ubuntu on Windows'. Lo que tendremos allí es básicamente un sistema Linux completo en nuestro escritorio Windows. Completo al menos como consola, porque no hay acceso nativo a una interfaz gráfica.
Como ya explicamos en nuestro análisis técnico de esta característica, lo que nos encontramos aquí es básicamente un sistema Linux (Ubuntu 14.04 LTS, en concreto) que podremos controlar a través de la intérprete de comandos bash.
En esa consola podremos hacer bastantes cosas de las que hacemos en una terminal bash, pero el estado beta de esta nueva característica hace que no todo funcione. Nosotros comprobamos cómo es posible instalar varios paquetes comunes. Encontrarse con un acceso total al gestor de paquetes APT es fantástico, y es posible buscar paquetes (apt-cache search) o instalarlos (apt-get install) de forma realmente rápida, como también lo es actualizar la lista de paquetes y actualizar la distribución en sí.
Gracias a ello es posible acceder a todo el catálogo de software de la distribución, aunque obviamente solo podremos ejecutar de forma directa aquellas aplicaciones (y juegos) que no necesiten de una interfaz gráfica de usuario ni tener detrás un servidor de ventanas y entornos de escritorio como GNOME o KDE, por ejemplo.
En nuestras pruebas instalamos y utilizamos sin problemas aplicaciones como ssh, emacs o algunos juegos compatibles con la librería ncurses -ninvaders, nsnake- que son pruebas básicas de que es posible utilizar este tipo de soluciones directamente en la consola. Atención porque estamos usando paquetes nativos de Ubuntu, es decir, exactamente los mismos binarios ELF 64 que utilizaríamos si hubiésemos instalado la distribución Ubuntu (o cualquier otra de 64 bits) en una partición separada.
También probamos algunas herramientas algo más curiosas como el cliente de Twitter turses o navegadores web de consola como el legendario lynx en el que el aspecto de nuestra web -y de cualquier otra, claro está- no tiene mucho que ver con lo que estáis leyendo ahora. Como nos confirmaron los responsables de Microsoft, cada unidad Windows (C:, D:, E:, etc) se monta automáticamente en este sistema en subdirectorios (/mnt/c, /mnt/d, /mnt/e, etc), pero es que además tenemos acceso al sistema de ficheros de Linux desde Windows: si abrimos un explorador de archivos en la ruta "C:\Users[Nombre de usuario]\AppData\Local\lxss" tendremos acceso a esa estructura de ficheros de nuestra singular distribución "integrada" en Windows 10.
Evidentemente estas pruebas son muy básicas y solo nos permiten comprobar que la consola que tenemos ante nosotros es funcional. Como advertían los responsables de Windows, no todo es perfecto. Existen aplicaciones que dan problemas o que directamente no se ejecutan. A nosotros nos ocurrió por ejemplo al instalar nginx -el paquete se instaló perfectamente y el servicio parecía iniciarse, pero no había nada ejecutándose realmente- o al tratar de utilizar tmux, la conocida herramienta para poder trabajar con varias sesiones del intérprete de comandos al mismo tiempo.
En realidad estos problemas son los normales de una solución que está en plena fase de desarrollo, pero es que además todo esto está pensado para poder atraer a desarrolladores del mundo Linux que quieran trabajar con sus entornos convencionales bajo un sistema Windows. Muchas de las herramientas para estos expertos ya están disponibles -el compilador gcc funciona sin problemas, por ejemplo, y en Microsoft ya nos demostraron cómo Redis y otras soluciones estaban ya soportadas- y otras están en proceso -MySQL parece dar algún que otro problema-, pero lo que está claro es que esta es solo la primera etapa de un camino mucho más largo. Uno con sorpresas como la siguiente.
Sí, es posible utilizar aplicaciones gráficas
Aunque Microsoft no habló del soporte de una interfaz gráfica de forma nativa, sí que es posible ejecutar algunas herramientas gráficas para poder comprobar que esto podría ir a mucho más en el futuro. En realidad aquí no tenemos soporte nativo, pero sí podemos hacer uso de un "truco".
Se trata de instalar algún tipo de aplicación que precisamente cree un servidor de ventanas en segundo plano al que poder dirigir esas aplicaciones gráficas. Existen varias alternativas en este sentido como Cygwin X, Vcxsrv o Xming, y en todos ellos el principio es el mismo: un servicio crea ese servidor de ventanas, a partir de lo cual podremos aprovecharlo como si tuvieramos uno real en nuestra consola bash de Ubuntu en Windows.
Lo único que quedará por hacer tras instalar uno de esos servidores -nosotros hicimos la prueba con Vcxsrv- será establecer la variable de entorno apropiada con un 'export DISPLAY=:0' (sin comillas) en la consola. Al hacerlo ya podremos instalar algunas aplicaciones básicas con un 'apt-get install x11-apps' y luego probar algunos "juguetes" clásicos como xeyes y herramientas legendarias como xedit.
Eso le anima a uno a hacer pruebas algo más ambiciosas, y por ejemplo tratamos de instalar algunas herramientas GTK como gedit e incluso un entorno ligero de ventanas como xfce. Aquí no hubo suerte, aunque puede que solo sea cuestión de tratar de solucionar algunos problemas porque es muy probable que ajustar este tipo de entornos a este escenario no sea tan complicado.
La conclusión tras estas primeras horas con la consola bash de Ubuntu en Windows 10 es que efectivamente esta puede ser una alternativa muy interesante para todos los que quieran trabajar con este sistema en modo intérprete de comandos sin salir de Windows 10. Quién lo hubiera pensado hace unos años, ¿verdad? Impresionante.
Ver 40 comentarios