Windows 10 ahora ofrece (luego de actualizar a la edición de aniversario) una terminal Linux compatible con el sistema operativo de Microsoft, una movida muy extraña e increíble, pero supongo que lo hicieron en parte debido al auge de herramientas en la línea de comandos para desarrollar software y el gran uso de sistemas Linux en la sector de servidores.
Lo interesante de la terminal, es que no es solo una aplicación o un sistema de emulación como cygwin sino que posee el núcleo Linux (específicamente de Ubuntu) dentro del sistema y puedes realizar casi cualquier cosa (no gráfica) que podrías hacer en GNU/Linux.
En la siguiente charla de Alex Ionescu podrás comprender como Microsoft logró integrar el núcleo Linux con el núcleo de Windows 10, para tener una terminal real de sistema operativo y poder realizar llamadas al sistema para: ejecutar procesos de altos privilegios, acceso al sistema de archivos, procesos, entre otros. Realmente te recomiendo ver esta charla si te llama la atención la arquitectura de los sistemas operativos, pues el trabajo que hicieron en este proyecto es realmente bueno.
"The Linux Kernel Hidden Inside Windows 10" techtalk by Alex Ionescu
Para complementar el vídeo, puedes descargar las láminas de la presentación para su lectura. Espero que te haya gustado el vídeo y comenta si quieres aportar cualquier información, ahora espero que no te migres a Windows porque ahora tienes una terminal de Linux 😉
Desde hace unos meses Microsoft ha estado cambiando su imagen, en parte porque durante la presidencia de Steve Ballmer perdió su reinado ante compañías como Apple, Google, entre otros. Sigue siendo el líder y la empresa mas importante de la informática, pero no llega al mismo nivel que tenía durante los 90s.
En los últimos años vimos cosas como que Microsoft empezó a colaborar en el kernel Linux aportando código (de hecho estuvo por encima de mucha compañías por un tiempo), se unió a la Linux Foundation, cosa que sorprendió a muchos. En estos días, anunció la liberación de Chakra su interprete de Javascript bajo código abierto, compró Xamarín (la empresa de Miguel de Icaza) y ahora permite una licencia gratuita, próximamente habrá SQL Server para Linux y la última que generó gran sorpresa, la inclusión de Ubuntu dentro de Windows 10 para tener una terminal de Linux dentro de ese sistema operativo, todo esto bajo la campaña Microsoft ♥ Linux.
Quién hubiese imaginado hace 18 años que Microsoft lanzaría esta campaña
Las nuevas generaciones de programadores o usuarios de software libre lo ven como algo bien, ya que creen que Microsoft está abriéndose y ahora es mas amigable. Pero yo no creo que sea así, pues siguen siendo la misma empresa y conservan su cultura organizacional de dominar todo sector de la informática. Antes de compartirles mi opinión, veamos la situación actual con la empresa.
La mayoría de servidores usan Linux
Si revisan las estadísticas, la mayoría de servidores en Internet corren Linux y 99% de las supercomputadoras corren en Linux, ademas muchos de los clientes de Azure (la plataforma de la nube de Microsoft) lo utilizan para tener sus servidores Linux en ellos, esto significa que ninguna de esas instalaciones puede utilizar tecnologías de Microsoft, perdiendo gran cuota del mercado y saben que mucha gente no le gusta tener Windows Server como solución empresarial, por esta razón se van a la competencia, por ejemplo, alguien que desee usar un gestor de base datos y utilice Linux en sus servidores, podrán usar soluciones como MySQL, SQL Lite, Oracle DB, Postgres…pero no SQL Server. Así que la liberación de una versión para esta plataforma corresponde a necesidad de expandirse en el mercado.
En el móvil
Las plataformas móviles están lideradas por Android y iOS, donde la principal forma de desarrollar en ellas es Java y Swift/Objetive C respectivamente, Windows 10 Mobile no ha logrado despegar mucho y por lo tanto la plataforma de desarrollo con .NET es casi ausente en el sector móvil. Por ello, compraron Xamarin una plataforma que permite llevar software escrito en .NET a Android y iOS, así pueden expandir e impulsar sus tecnologías a las plataformas móviles.
Atraer los desarrolladores
Este es el punto mas importante he visto, he estado en conferencias internacionales, eventos de software libre y de Mozilla, he tenido la oportunidad de visitar, trabajar en varias empresas y el patrón que he visto es que si no usan tecnología de Microsoft en sus productos, no utilizan Windows en sus equipos, por esta razón vemos que si desean trabajar por ejemplo, con Ruby o Javascript, observarán que casi todo se hace a través de la línea de comandos, control de versiones y acceso a servidores se hace a traves de SSH que funciona por consola (de hecho GIT es un programa de consola), herramientas de manejo de dependencias de software (que se usan actualmente en todas las tecnologías) se hacen por la terminal.
Por esta razón, muchos programadores hoy en día compran una Mac o instalan Linux en sus equipos para tener una mejor experiencia de desarrollo y aumentar la productividad. Por ello, Microsoft se vio obligada a incorporar una terminal de Linux en su sistema operativo para soportar todas estas tecnologías y evitar la migración de usuarios a UNIX/Linux. Ademas, al ser un Linux real (Ubuntu), no es necesario migrar el software existente sino ya viene compatible con todo lo que existe (esta es la diferencia con Cygwin).
Palabras finales
En conclusión, pueden ver que todo lo que han hecho para «amar Linux» (o código abierto) ha sido solo para expandir el terreno perdido y dominar el mercado y volver a ser el Microsoft de Bill Gates, que dominaba todo sector de mercado (lo cual es normal en cualquier empresa), solo que en el caso de Microsoft, recodemos que atacaba fuertemente al software libre y Linux como se descubrió en los documentos de halloween del 98.
Si Microsoft de verdad amara Linux, tuviese su cliente de Skype actualizado , y no lo hubiese abandonado desde hace año y medio.
Uno de los problemas de los usuarios de Linux y BSD, es cuando por algún motivo toca reinstalar Windows en la máquina, pues siempre sobrescribe el cargador de arranque e inhabilita la posibilidad de iniciar otros sistema operativo. Por ello, es necesario buscar un LiveCD o arrancar desde un USB para poder entrar al sistema operativo alterno (Linux o BSD) y reinstalar el cargador de arranque, bien sea en UEFI o MBR.
Ayer me tocó actualizar a Windows 10 porque no quería perder la licencia y así la portátil perdiera valor (por si quisiera venderla después) y como siempre, sobrescribió el cargador de arranque. Antes utilizaba Windows para cargar Linux pero la portátil tengo utiliza UEFI y no me deja cambiar el arranque por defecto desde el menú de configuración, así que lo pasos que hice fueron los siguientes:
Reinstalar systemd-boot
La distribución que utilizo es Archlinux y desde hace tiempo utiliza el arranque de systemd, así que una vez que logres arrancar Archlinux y tengas acceso al terminal (con la partición /boot montada) ejecuta el siguiente comando para reinstalar systemd-boot:
#bootctl --path=/boot install
Teóricamente debería asignar este arranque por defecto, pero en mi máquina no fue así. Por lo que utilice el método a continuación para arrancar Linux por defecto.
Seleccionar systemd-boot como cargador por defecto del UEFI
Como siempre entraba a Windows por defecto, inicié sesión en ese sistema operativo y abrí la consola de comandos de Windows 10 (cmd.exe) y ejecuté:
Este comando selecciona el arranque por defecto, si no sabes la ruta, bien sea porque utilizas otro cargador u otra distribución. Puedes montar la partición UEFI/boot en Windows con tan solo 2 comandos:
mountvol z: /s
Ahora tendrás en la letra z: (puede ser cualquier otra disponible) la partición de arranque y puedes navegar en ella desde el terminal, así puedes buscar cual es la ruta de tu cargador.
Palabras finales
¡Listo! Al reiniciar Archlinux se iniciaba por defecto, ahora para arrancar Windows, simplemente tengo que entrar al menú de arranque de la portátil y seleccionar la opción de ese sistema, tal vez es un poco molesto, pero como casi nunca inicio Windows para mí no es problema.
Para quienes leen este blog desde sus inicios, siempre me gustaba echar broma sobre Bill Gates hasta su salida de Microsoft y su dedicación a la filantropía. Pero hoy salió un video de él en una entrevista, donde hizo un corto video con cierto toque de humor para promover su sitio web para ayuda social.
Bill Gates' Viral Video: GatesLetter.com (Late Night with Jimmy Fallon)