Cómo habilitar systemd en el subsistema de Windows para Linux (WSL)

Que systemd en Linux sea bueno o malo dependerá de con quién hables, pero es importante, tanto es así que algunos de los Subsistema de Windows para Linux (WSL) La comunidad había estado construyendo sus propias formas de implementarlo. Microsoft ha hecho el trabajo ahora, sin embargo, en asociación con Canonical, para implementar oficialmente systemd en WSL.

Sin embargo, inicialmente no está disponible para todos ni está habilitado de forma predeterminada. También tienes la posibilidad de desactivarlo en cualquier momento una vez que lo hayas activado. Esto es lo que necesita saber.

¿Qué es systemd?

\r\n https://www.youtube.com/watch? v=Ja3qikzd-as\r\n

La breve descripción oficial de systemd es:

Systemd es un conjunto de componentes básicos para un sistema Linux. Proporciona un administrador de sistemas y servicios que se ejecuta como PID 1 e inicia el resto del sistema.

Algunas de las distribuciones de Linux más populares ya utilizan systemd de forma predeterminada en instalaciones básicas. Algunos de ellos, como Ubuntu y Debian, también están disponibles en WSL.

La inclusión de systemd en WSL acerca la herramienta aún más a la experiencia de ejecutar Linux de forma nativa. También es necesario para algunas herramientas que ahora se pueden usar fácilmente en WSL, como snap, microk8s y systemctl.

Lo que necesitas para obtener systemd en WSL

Si está utilizando la versión de WSL en Windows, es decir, la que habilitó a través de PowerShell y no descargó de la Tienda, inicialmente no tendrá systemd. Solo aquellos que usen una versión Insider de Windows 11 o aquellos que usen WSL descargado de Microsoft Store lo tendrán. El número de versión que necesita es 0.67.6 y superior.

Para verificar si tiene la versión correcta, simplemente abra una ventana de PowerShell e ingrese wsl --versión y comprobar la respuesta. Si está por debajo de 0.67.6, dirígete a Microsoft Store y descargar WSL. Alternativamente, puede obtener la última versión del Repositorio WSL GitHub.

En el futuro, se agregará soporte para systemd a todos los usuarios y podrá verificar si hay actualizaciones de WSL ingresando wsl --actualizar en PowerShell.

Alternativamente, si está utilizando Ubuntu Preview en WSL, systemd se agrega automáticamente.

Cómo habilitar systemd

Para habilitar systemd, al menos ahora, deberá agregar una instrucción a su wsl.conf archivo. Este es un archivo de configuración que se encuentra dentro de cualquier distribución WSL de Linux y le permite configurar por distribución, en lugar de modificar la configuración global de WSL.

Es un archivo de texto simple, por lo que sólo necesitas abrirlo en un editor de texto. En este ejemplo, estamos usando Nano. Abra su wsl.conf en la distribución de Linux elegida ingresando lo siguiente:

sudo nano /etc/wsl.conf

Lo más probable es que ahora esté viendo un documento en blanco a menos que haya creado previamente su propio archivo de configuración.

Para habilitar systemd simplemente ingrese esto en su archivo wsl.conf:

[boot]
systemd=true

Ahora puede simplemente guardar y salir del archivo (CTRL+O para guardar y CTRL+X para salir). Desde aquí, debe cerrar su sesión WSL por completo. Cierre Linux, regrese a una ventana de PowerShell e ingrese:

wsl.exe--shutdown

Esto cerrará completamente WSL en su máquina. Ahora simplemente vuelva a abrir su distribución de Linux. El primer arranque puede tardar unos segundos más, pero cuando esté activo tendrás systemd ejecutándose. Puedes comprobar que funciona usando systemctl, uno de los servicios que dependen de systemd:

systemctl list-unit-files --type=service

Debería ver una lista de los servicios en ejecución ahora. Eso es todo lo que hay que hacer para habilitar systemd. Y por supuesto, al cambiar a false en tu wsl.conf puedes desactivarlo si lo deseas en cualquier momento.

Usando snap en Ubuntu en WSL

Una de las ventajas adicionales de usar systemd en Ubuntu en WSL es que ahora el complemento funciona correctamente. No todos correrán para usarlo, pero es otra característica a la que tienen acceso los usuarios de WSL. Y hay algunos paquetes instantáneos útiles que quizás quieras probar.

Nextcloud, por ejemplo, es una alternativa de código abierto a Microsoft 365 y las aplicaciones y el almacenamiento en la nube de Google. El complemento Nextcloud es una de las mejores formas de instalarlo en Linux y ahora está abierto en WSL. Instalar snaps es lo mismo que usar apt (o cualquier otro administrador de paquetes) sustituyendo snap en su lugar:

sudo snap install nextcloud

Puede encontrar rápidamente instantáneas disponibles consultando snapcraft.io.