ICM / linuxtitle_li=Sin categoríatitle_li=windows / Windows WSL

Windows WSL

6 julio 2022 | Carlos Calvo

WSL (Windows Subsystem for Linux) es una característica de Windows que nos permite ejecutar, dentro de nuestro Windows, un entorno de GNU/Linux. Dispone de la gran mayoría de herramientas de línea de comandos, utilidades y demás que podríamos utilizar en un sistema GNU/Linux tradicional o nativo.

Como seguramente dedujiste, no se trata de que podamos utilizar software nativo de Linux para entornos productivos. Se trata más bien de una característica destinada a desarrolladores o usuarios especializados que necesitan este tipo de entornos para trabajar pero que no renuncian a la productividad de un escritorio de Windows.

Necesidades para la instalación de WSL

Hasta la existencia de WSL en su versión 1, un usuario que quisiera disponer de una máquina Linux en su máquina Windows también podía hacer algo parecido, pero era obligatorio instalar previamente algún software de virtualización como WMware Player/Workstation, Oracle VirtualBox, Kvm o algún tipo de emulador como Cygwin para disponer de una consola más o menos parecida a una consola Bash.

Ahora este tipo de aplicaciones de virtualización, aunque sí es cierto que podrían vernirnos bien en muchas ocasiones como por ejemplo, cuando queremos aislar totalmente ambos contextos, ya no son del todo necesarias. Ahora podemos instalar esta característica en Windows de forma muy sencilla.

Para habilitar WSL en nuestro Windows, lo primero que debemos conocer es la versión, puesto que esta característica está sólo disponible a partir de la versión 2004 de Windows 10 o cualquier versión de Windows 11.

Una vez estamos seguros que nuestra versión de Windows es la adecuada, deberemos ejecutar una serie de pasos para dejar correctamente instalada nuestra distribución de Linux en Windows. Existe un método más rápido ejecutando ‘wsl –install’ desde una consola (cmd) con privilegios, pero en este artículo trataremos la instalación manual para que quede más claro los pasos necesarios para que esto funcione.

Instalar WSL

Para habilitar esta característica, podemos lanzar el siguiente comando desde una consola (cmd) abierta con privilegios de administrador:


/> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

La máquina necesita capacidades de virtualización, así que necesitaremos también ejecutar el siguiente comando tras haber ejecutado el anterior en una consola (cmd) con privilegios de administrador:


/> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

A continuación deberemos descargar el «Linux Kernel Update Package» para instalar en nuestro Windows.
/> Abra el siguiente enlace, descargue el paquete (es un .msi) e instálelo. El enlace es:

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi


Debemos especificar que queremos utilizar la última versión disponible de WSL, para eso, desde una ventana de PowerShell con privilegios de administrador, deberemos ejecutar el siguiente comando:


/> wsl --set-default-version 2

Y ahora llega el momento de elegir qué distribución de Linux queremos instalar. Tenemos a nuestro alcance bastantes, pero para este tutorial vamos a utilizar una que desde ICM consideramos bastante común, una Ubuntu Server. La distribución a instalar la elegiremos desde la Microsoft Store de nuestro Windows, pero aquí tiene los enlaces a las principales distribuciones disponibles:


# https://www.microsoft.com/store/apps/9N9TNGVNDL3Q Ubuntu 18.04 LTS
# https://www.microsoft.com/store/apps/9n6svws3rx71 Ubuntu 20.04 LTS
# https://www.microsoft.com/store/apps/9PN20MSR04DW Ubuntu 22.04 LTS
# https://www.microsoft.com/store/apps/9NJFZK00FGKV openSUSE Leap 15.1
# https://www.microsoft.com/store/apps/9MZ3D1TRP8T1 SUSE Linux Enterprise Server 12 SP5
# https://www.microsoft.com/store/apps/9PN498VPMF3Z SUSE Linux Enterprise Server 15 SP1
# https://www.microsoft.com/store/apps/9PKR34TNCV07 Kali Linux
# https://www.microsoft.com/store/apps/9MSVKQC78PK6 Debian GNU/Linux
# https://www.microsoft.com/store/apps/9n6gdm4k2hnc Fedora Remix for WSL
# https://www.microsoft.com/store/apps/9NV1GV1PXZ6P Pengwin
# https://www.microsoft.com/store/apps/9N8LP0X93VCP Pengwin Enterprise
# https://www.microsoft.com/store/apps/9p804crf0395 Alpine WSL
# https://www.microsoft.com/store/apps/9msmjqd017x7 Raft(Free Trial)

Una vez acceda a uno de estos enlaces, se le abrirá Microsoft Store con la distribución seleccionada. Haga clic en «Get» o «Install» para obtener la distribución.
Se le abrirá una consola (cmd) mostrándole el progreso de la instalación en el que se le pedirá que establezca el usuario principal de la distribución que haya seleccionado y su password relacionado.

Si por el motivo que sea, Microsoft Store no está disponible desde su entorno de trabajo, tenga en cuenta que puede descargar las distribuciones desde enlaces directos, y lo puede hacer desde los siguientes enlaces:


# https://aka.ms/wslubuntu Ubuntu
# https://aka.ms/wslubuntu2204 Ubuntu 22.04 LTS
# https://aka.ms/wslubuntu2004 Ubuntu 20.04
# https://aka.ms/wslubuntu2004arm Ubuntu 20.04 ARM
# https://aka.ms/wsl-ubuntu-1804 Ubuntu 18.04
# https://aka.ms/wsl-ubuntu-1804-arm Ubuntu 18.04 ARM
# https://aka.ms/wsl-ubuntu-1604 Ubuntu 16.04
# https://aka.ms/wsl-debian-gnulinux Debian GNU/Linux
# https://aka.ms/wsl-kali-linux-new Kali Linux
# https://aka.ms/wsl-sles-12 SUSE Linux Enterprise Server 12
# https://aka.ms/wsl-SUSELinuxEnterpriseServer15SP2 SUSE Linux Enterprise Server 15
# https://aka.ms/wsl-SUSELinuxEnterpriseServer15SP3 SUSE Linux Enterprise Server 15
# https://aka.ms/wsl-opensuse-tumbleweed openSUSE Tumbleweed
# https://aka.ms/wsl-opensuseleap15-3 openSUSE Leap 15.3
# https://aka.ms/wsl-opensuseleap15-2 openSUSE Leap 15.2
# https://aka.ms/wsl-oraclelinux-8-5 Oracle Linux 8.5
# https://aka.ms/wsl-oraclelinux-7-9 Oracle Linux 7.9
# https://github.com/WhitewaterFoundry/WSLFedoraRemix/releases/ Fedora Remix for WSL

Con un comando en Powershell, podría descargarse una Ubuntu 22.04 LTS de la siguiente forma:


/> Invoke-WebRequest -Uri https://aka.ms/wslubuntu2204 -OutFile Ubuntu2204.appx -UseBasicParsing

Luego, también desde Powershell, podrá instalar el paquete utilizando el siguiente comando:

/> Add-AppxPackage .\Ubuntu2204.appx

Windows Terminal

Si va a manejar y trabajar con diferentes distribuciones de Linux en su máquina Windows, es recomendable tener una consola que esté a la altura de sus necesidades.
Desde hace algunos años, Microsoft cuenta con «Windows Terminal», una aplicación que hace de consola en nuestro Windows que se integra perfectamente con cmd, Powershell y con cualquier distribución de Linux que decida instalar.

Como puede ver en la imagen siguiente, podemos disponer con «Tabs» de todas las consolas que deseemos abiertas simultáneamente, incluyendo consolas remotas o abiertas sobre nuestro Windows local.

Para instalar Windows Terminal, debe hacerlo desde Microsoft Store, simplemente busque e instale el software desde la Store.


Existe un procedimiento para instalar Windows Terminal en máquinas que no tienen acceso a Microsoft Store. Lo haríamos de la siguiente manera:
Primero de todo debemos seleccionar la versión a instalar, lo haremos desde aquí: https://github.com/microsoft/terminal/releases/tag/


Una vez conocemos la versión, la descargamos y una vez haya terminado, ejecutamos el siguiente comando en Powershell:


/> Add-AppxPackage Microsoft.WindowsTerminalPreview_Win1xxxxxxxxxx.xxx.xxxx_yyyyyyyyyyyyyy.msixbundle

Con todo esto, ya tendríamos en nuestra distribución de Windows un sistema Linux ejecutándose y dispondremos una aplicación de Terminal que nos proporcione un acceso amigable a todos esos subsistemas (y también el Windows propio) que vayamos instalando a lo largo del tiempo.