El Windows Subsystem for Linux (WSL) permite ejecutar programas de Linux en Windows, sin necesidad de cambiar entre sistemas operativos. Esto es ideal para aquellos que quieren aprovechar las herramientas de Linux en un entorno de Windows. Aunque los programas en WSL pueden ser más lentos que en un sistema Linux nativo, Microsoft continúa trabajando en mejoras que incluyen actualizaciones del kernel de Linux, lo que puede optimizar el rendimiento de WSL.
Kernel de WSL y Virtualización
En WSL 2, el kernel de Linux se ejecuta sobre un hipervisor, similar al uso de KVM/Qemu en Linux. Este kernel facilita la comunicación entre los sistemas host e invitado, manejando aspectos como la memoria y la CPU. Aunque el código es desarrollado principalmente por Microsoft, las mejoras en el kernel pueden traer soporte para nuevo hardware y optimizaciones de rendimiento.
Instalación de WSL y Verificación de la Versión
Para ejecutar Linux en WSL y verificar su versión:
- Instala WSL usando PowerShell con el siguiente comando:
wsl --install -d
Ubuntu-24.04 - Verifica las distribuciones disponibles con:
wsl --list --online
Reinicia Windows después de esta acción. - Configura el sistema Ubuntu ingresando un nombre de usuario y contraseña, y luego actualiza con:
sudo apt update && sudo apt upgrade
- Determina la versión de WSL ejecutando:shellwsl -l -vSi aparece “1” en la columna de versión, actualiza con:
wsl --set-default-version 2 wsl --set-default
[Distribución]Reemplaza [Distribución] con el nombre de la distribución.
Crear un Nuevo Kernel para WSL 2
Si necesitas un kernel personalizado, sigue estos pasos:
Paso 1: Instala Paquetes de Desarrollo
Ejecuta Linux en WSL e instala paquetes esenciales para el desarrollo:
sudo apt install build-essential flex bison dwarves libssl-dev libelf-dev libncurses-dev git
Paso 2: Descarga el Código Fuente del Kernel
- Crea un directorio de trabajo y descarga el código con:shellmkdir kernel cd kernel
git clone https://github.com/microsoft/WSL2-Linux-Kernel.git --depth=1 -b linux-msft-wsl-6.6.y cd WSL2-Linux-Kernel
Ajusta la versión del kernel si es necesario.
Paso 3: Configura el Nombre del Kernel
Personaliza el nombre del kernel con:
scripts/config --file Microsoft/config-wsl --set-str LOCALVERSION "-custom-microsoft-standard-WSL2"
Opcionalmente, accede al editor de configuración con:
make menuconfig KCONFIG_CONFIG=Microsoft/config-wsl
Paso 4: Compila el Kernel
Genera el kernel con:
echo 'yes' | make -j $(nproc) KCONFIG_CONFIG=Microsoft/config-wsl
Instala los módulos con:
sudo make KCONFIG_CONFIG=Microsoft/config-wsl modules_install
Paso 5: Copia el Kernel a la Carpeta de WSL en Windows
- Abre el entorno Linux en Windows Explorer.
- Copia el archivo vmlinux a la carpeta WSL en tu perfil de usuario de Windows:
C:\Users\[nombreusuario]\WSL
Paso 6: Configura el Archivo .wslconfig en Windows
- Crea el archivo .wslconfig en la carpeta de tu perfil.
- Añade las siguientes líneas:
plaintext[wsl2] kernel=C:\Users\[nombreusuario]\WSL\vmlinuxReemplaza [nombreusuario]
con tu nombre de usuario.
Finalizar e Iniciar con el Nuevo Kernel
- Termina todas las instancias de WSL en PowerShell con:
shellwsl --shutdown
- Inicia Linux en WSL y verifica la versión del nuevo kernel con:
uname -a
Actualizar y personalizar el kernel de WSL 2 puede mejorar el rendimiento y la compatibilidad en sistemas Windows que ejecutan Linux. Este proceso permite a los usuarios de WSL experimentar con características avanzadas, optimizando su entorno de desarrollo Linux dentro de Windows.
Fuente: somoslibres