Instalación de WSL2

Instalación de WSL (Linux en Windows)


Tradicionalmente, Windows ha proporcionado a sus usuarios una interfaz de línea de comandos que funciona bajo su propio sistema, heredado de MS-DOS y diferente a GNU/Linux. Sin embargo, a partir de Windows 10, con la irrupción de Windows Subsystem for Linux (más comunmente denominado WSL), esto ha cambiado radicalmente.

¿Qué es WSL?

Ahora es posible utilizar distribuciones de GNU/Linux como Ubuntu o Debian dentro de nuestro Windows, utilizando comandos o aplicaciones de GNU/Linux, incluso las que tienen entorno gráfico. En la siguiente imagen, podemos ver una captura de un sistema GNU/Linux Debian dentro de Windows, a través de Windows Terminal.

WSL en Windows Terminal, ejecutando neofetch

Otros sistemas operativos como GNU/Linux o Mac, disponen de una interfaz de línea de comandos, por lo que hasta el momento era bastante complejo tener compatibilidad entre estos sistemas y uno Windows. Con la adopción de WSL en Windows, Microsoft introduce una capa intermedia que funciona con un núcleo de Linux real (kernel) y en el que se pueden instalar distribuciones de GNU/Linux (desde la tienda oficial de Microsoft o de forma manual) como por ejemplo Ubuntu, Debian, Kali o incluso la distribución minimalista Alpine.

En la siguiente guía, vamos a ver como instalar WSL (Windows Subsystem for Linux) en nuestro Windows paso a paso, y luego como configurarlo correctamente (o resolver ciertos problemas si los hay).

Requisitos previos

Para poder disponer de una terminal de GNU/Linux en nuestro Windows, antes necesitamos asegurarnos que nuestro equipo cumple los siguientes requisitos. Muchas de estas características se instalan/activan automáticamente en la instalación automática en últimas versiones de Windows.

Para que WSL funcione correctamente necesitaremos que se cumplan las siguientes condiciones:

  • Tener Windows 10 o superior (cualquier versión salvo Windows S).
  • La virtualización Hyper-V activada en la BIOS/UEFI (lo normal en equipos nuevos).
  • La característica Windows Subsystem for Linux activada.
  • La característica Plataforma de Máquina Virtual activada.
  • Se recomienda tener las actualizaciones de Windows al día para evitar problemas.

En general, los equipos actuales ya cumplen estas condiciones. Mi consejo es intentar realizar la instalación automática (más abajo), y si tienes problemas, revisar esta parte de requisitos previos.

En la BIOS/UEFI del equipo, debes tener activada la característica Virtualización Hyper-V o Hyper-threading virtualization. Para comprobar si la tenemos activada, pulsamos CTLR+ALT+SUPR y vamos al Administrador de tareas, a la pestaña Rendimiento.

Si marcamos CPU, en las opciones inferiores podremos ver un texto que dice Virtualización: Habilitado:

Administrador de tareas / CPU / Virtualización

En ese caso, tenemos la virtualización Hyper-V activada en la BIOS y podemos saltar al siguiente punto. Si sale inhabilitada o similar, necesitamos activarla.

En algunos casos, es posible activar esta característica desde el Símbolo de sistema de Windows como administrador, escribiendo el comando bcdedit /set hypervisorlaunchtype auto. Para volverla a desactivar, el comando sería bcdedit /set hypervisorlaunchtype off.

Si aún con este paso, no nos funciona, o nos indica que la virtualización no está activada en el firmware, tendremos que acceder a la BIOS/UEFI de nuestro equipo de forma manual para activarla. Los pasos a seguir serían los siguientes:

  • Reinicia tu equipo, y durante el inicio pulsa repetidamente la tecla para acceder a la BIOS. Suele ser ESC, F2, F10, F12, Supr o alguna similar, que depende del modelo de equipo (suele indicarlo en alguna parte de la pantalla).

  • Busca una sección llamada CPU Configuration, Advanced o Virtualization. Este nombre depende del modelo de placa. Dentro de esta sección, debe existir una opción Intel VT-x o AMD-V. Modifica esa opción y marca Enabled.

  • Guarda los cambios, normalmente con F10 y sal de la BIOS/UEFI. Ahora, al volver a Windows debería aparecer Virtualización: Habilitada en la pestaña Rendimiento del Administrador de tareas.

Por otro lado, para activar las características mencionadas anteriormente en Windows, accedemos a Inicio y buscamos Activar o desactivar características de Windows, donde encontraremos un menú de selección para activar las casillas Subsistema de Windows para Linux y Plataforma de máquina virtual:

Instalación de características para Windows Subsystem Linux (WSL)

La primera de ellas es absolutamente necesaria, puesto que es el propio WSL. La segunda de ellas es necesaria para utilizar WSL2, y es posible que no aparezca si no tienes Windows 10 actualizado. Puedes comprobarlo, accediendo a Inicio y abriendo una terminal de Windows escribiendo CMD o Símbolo de sistema y escribiendo lo siguiente:

> ver

Microsoft Windows [Versión 10.0.19044.2728]

El comando ver nos mostrará la versión instalada de Windows 10. Si es igual o superior a 10.0.19041, podremos utilizar WSL2, en caso contrario, es posible que no podamos utilizar WSL (o sólo podamos usar WSL1). Para solucionarlo, revisa las actualizaciones de Windows e instala las que tengas pendientes.

Nota: También es posible comprobar que versión tenemos instalada pulsando Win+R y escribiendo winver. Si tenemos la compilación de SO 19041 o superior, podremos utilizar WSL2.

Instalación de WSL2

Vamos a ver los pasos necesarios para instalar WSL en nuestro sistema, de modo que podamos utilizar Linux dentro de Windows, en este subsistema de Linux para Windows.

Desplegamos el menú de Inicio y escribimos Símbolo de Sistema, pulsamos con botón derecho y seleccionamos Ejecutar como Administrador. Nos aparece una terminal de texto, donde escribiremos el siguiente comando:

wsl --install -d Debian

Personalmente, prefiero instalar Debian, pero existen otras distribuciones de Linux para WSL. Si simplemente omitimos el -d Debian y escribimos wsl --install, se instalará Ubuntu, ya que es la distribución por defecto.

Una vez hecho esto, reiniciamos la máquina. Esto realizará los pasos necesarios para tener WSL:

  • Habilitar las características opcionales necesarias.
  • Descargar el último kernel de Linux más reciente.
  • Establecer WSL2 como predeterminado.
  • Instalar Debian (o Ubuntu) como distribución de Linux en WSL.

Si este método ha funcionado correctamente, deberíamos tener WSL y Debian instalados.

Si por alguna razón no te funciona el comando wsl --install -d Debian, sube a la parte de requisitos previos para detectar cuál es el problema.

Distros de Linux para WSL

Normalmente, en la instalación de WSL nos instalará el sistema WSL y la distribución elegida (Debian en nuestro caso), pero puede ocurrir que en algunos casos no la instale o accedamos a un equipo que no tiene ninguna instalada. Vamos a asegurarnos.

Windows Subsystem for Linux funciona de modo que podemos tener varias distribuciones instaladas en nuestro sistema y utilizar la que queramos. Una vez hecho los pasos anteriores, deberíamos disponer de un comando wsl.

Para ver que distribuciones tenemos instaladas, abrimos una terminal de Windows pulsando Win+R y escribiendo cmd. Luego, tecleamos el comando wsl --list:

> wsl --list

El subsistema de Windows para Linux no tiene distribuciones instaladas.
Para instalar las distribuciones, se puede visitar Microsoft Store:
https://aka.ms/wslstore

En el caso de tener alguna distribución de Linux instalada, nos aparecerían en la lista, como veremos un poco más adelante.

Si en lugar de aparecer el mensaje anterior nos muestra un error al no encontrar el comando wsl, es posible que no tengamos aún instalada la característica Windows Subsystem for Linux, por lo que deberías volver al inicio de este tutorial y seguir los requisitos previos.

WSL permite instalar una serie de distribuciones de Linux específicas, que podemos consultar escribiendo el comando wsl --list --online. En este artículo, elegiremos la distribución Debian:

> wsl --list --online
A continuación, se muestra una lista de las distribuciones válidas que se pueden instalar.
Instalar con 'wsl.exe --install <Distro>'.

NAME                                   FRIENDLY NAME
Ubuntu                                 Ubuntu
Debian                                 Debian GNU/Linux
kali-linux                             Kali Linux Rolling
Ubuntu-18.04                           Ubuntu 18.04 LTS
Ubuntu-20.04                           Ubuntu 20.04 LTS
Ubuntu-22.04                           Ubuntu 22.04 LTS
OracleLinux_8_5                        Oracle Linux 8.5
OracleLinux_7_9                        Oracle Linux 7.9
SUSE-Linux-Enterprise-Server-15-SP4    SUSE Linux Enterprise Server 15 SP4
openSUSE-Leap-15.4                     openSUSE Leap 15.4
openSUSE-Tumbleweed                    openSUSE Tumbleweed

Recuerda que la forma automática de instalar una de estas distribuciones es escribiendo wsl --install -d Debian, y reemplazando Debian por el nombre de la distribución deseada.

Si por alguna razón, preferimos la instalación manual, podemos elegir una de las distribuciones siguientes:

DistribuciónPágina oficialEnlace a tienda MicrosoftDescarga manual (.appx)
Debian LinuxDebianDebian MS StoreDebian .appx
Ubuntu LinuxUbuntuUbuntu MS StoreUbuntu 20.04 .appx
Kali LinuxKaliKali MS StoreKali Linux .appx
Open SuseOpen SuseOpen Suse MS StoreOpen Suse .appx
Alpine Linux ¹AlpineAlpine MS Store

¹ No oficial.

Las distribuciones se pueden instalar automáticamente desde la tienda oficial de Microsoft, o manualmente, ejecutando un archivo .appx que contiene la distribución de Linux a instalar. Si lo hacemos de la primera forma, se instalará de forma transparente, si lo hacemos de la segunda forma, nos mostrará una ventana similar a la siguiente:

WSL: Instalación de Debian en Windows Subsystem Linux

Simplemente, pulsamos Instalar y esperamos a que termine la instalación.

Configuración de la distro

Una vez elegida la distribución de Linux e iniciado el proceso de instalación en nuestro sistema, tras esperar un corto espacio de tiempo, si la arrancamos por primera vez, nos aparecerá una ventana similar a la siguiente:

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your
Windows username. For more information visit: https://aka.ms/wslusers
Enter new UNIX username:

En ella, se nos está preguntando por el nombre de usuario y su correspondiente contraseña para utilizar en nuestra distribución de Linux de WSL. Es muy importante que apuntemos estas credenciales, puesto que son las que necesitaremos para acceder a nuestro Linux de WSL. Atento a las siguientes indicaciones:

  • El nombre de usuario debe estar en minúsculas.
  • No es necesario que coincida con el nombre de usuario de Windows.
  • No debe tener signos de puntuación o acentuación.

Ten en cuenta que el nombre de usuario que escribas va a ser el que utilizarás en WSL de forma habitual. Por ejemplo, si utilizamos el nombre de usuario manz, nuestra carpeta de usuario será /home/manz.

Listo. Ya tenemos WSL activada con nuestra distribución de GNU/Linux instalada. Ahora, lo recomendable sería revisar el apartado de Configuración de WSL para asegurarnos de que todo está correctamente o mejorar algunos apartados.

¿Quién soy yo?

Soy Manz, vivo en Tenerife (España) y soy streamer partner en Twitch y profesor. Me apasiona el universo de la programación web, el diseño y desarrollo web y la tecnología en general. Aunque soy full-stack, mi pasión es el front-end, la terminal y crear cosas divertidas y locas.

Puedes encontrar más sobre mi en Manz.dev