Lectores como tú ayudan a apoyar a MUO. Cuando realiza una compra utilizando enlaces en nuestro sitio, podemos ganar una comisión de afiliado.

El subsistema de Windows para Linux, o WSL, es una excelente manera para que los desarrolladores que necesitan ejecutar Linux y Windows lo hagan sin tener que configurar una máquina virtual o arranque dual.

Una característica nueva importante es la capacidad de ejecutar systemd en WSL, lo cual es útil para los desarrolladores web que configuran entornos de prueba localmente. Aquí se explica cómo habilitarlo y usarlo.

¿Por qué instalar systemd en WSL?

Los servicios de WSL ejecutan de forma predeterminada el servicio de inicialización de System V más antiguo y los servicios se inician con el comando de servicio. En septiembre de 2022, microsoft agregó la opción de usar systemd para administrar servicios. La mayoría de las principales distribuciones de Linux ya han cambiado a systemd.

A pesar de la controversia, en el uso real, es mucho más simple iniciar y detener servicios con systemd

instagram viewer
. También es más fácil de seguir junto con otros tutoriales de Linux, ya que no tiene que cambiar tanto los comandos.

Un entorno de prueba LAMP local estará más cerca de un servidor Linux estándar, por lo que su aplicación será más fácil de depurar.

Cómo habilitar systemd en WSL

Para habilitar systemd, debe ejecutar la versión correcta de WSL. systemd requiere WSL versión 0.67.6 o superior. Puede verificar el número de versión abriendo PowerShell y escribiendo:

wsl --versión

Si tiene instalada una versión anterior y desea usar systemd, puede actualizar WSL usando:

wsl --actualizar

Ahora tendrás que configurar systemd en cualquier distribución que hayas instalado con WSL. El proceso es el mismo en cualquier distribución de WSL, ya sea Ubuntu, Debian, Fedora u otra.

Simplemente edite el /etc/wsl.conf archivo en su sistema como root y agregue estas líneas:

[bota]
sistemad=verdadero

Si el archivo wsl.conf no existe, no se preocupe y continúe creándolo usted mismo. Estas líneas funcionarán independientemente.

Guarde el archivo y ahora tendrá que reiniciar cualquier distribución de WSL en ejecución. Para hacer esto, abra una ventana de PowerShell y escriba este comando:

wsl --cerrar

Abra otra terminal y podrá administrar servicios con systemd en WSL.

Inicio y detención de servicios WSL con systemd

Ahora puedes usar systemctl para iniciar y detener servicios en WSL.

Suponga que estaba usando Apache para ejecutar un servidor web local para probar una aplicación web que estaba desarrollando.

Empezarías Apache así:

sudosystemctlcomenzarapache2.servicio

Si quisiera que se iniciara automáticamente, lo habilitaría usando:

sudo systemctl habilitar apache2.servicio

Y deshabilítalo con:

sudosystemctldetenerapache2.servicio

Ahora puede ejecutar systemd en WSL

Con las últimas actualizaciones de WSL, ahora puede habilitar systemd e iniciar y detener servicios cuando los necesite. Esto hace que WSL sea un buen entorno para desarrollar aplicaciones web, ya que puede probarlas como si estuviera usando cualquier otra máquina Linux estándar.

También es extremadamente fácil instalar un servidor LAMP (Linux, Apache, MySQL, PHP) en el Subsistema de Windows para Linux.