Skip to content

Mantener activa una distribución de WSL ​

Muchos usuarios que acaban de empezar con WSL2 se encuentran con una "confusión": Linux está instalado, pero ¿por qué se "apaga automáticamente" poco después de cerrar el terminal? ¿Por qué no puede seguir funcionando?

Este artículo describe primero este fenómeno, después explica por qué Microsoft diseñó WSL de esta manera y, por último, presenta cómo usar WSL Dashboard para iniciar una distribución de Linux mantenida activa (keep-alive).

1. Situación actual: después de cerrar el terminal, Linux se apaga automáticamente en poco tiempo ​

¿Ha vivido alguna vez la siguiente situación?

  1. Abre el terminal de una distribución de Linux, y Linux se inicia automáticamente, sin necesidad de ejecutar ningún comando;
  2. Tras cerrar la ventana del terminal, Linux no sigue en ejecución: aproximadamente 60 segundos después, se apaga automáticamente;
  3. Vuelve a abrir el terminal, y Linux se inicia de nuevo automáticamente, y así sucesivamente.

NOTE

El "tiempo de espera de inactividad" (idle timeout) predeterminado de WSL2 es de unos 60 segundos: cuando no hay procesos en ejecución en la distribución (por ejemplo, si ha cerrado todos los terminales), la máquina virtual de WSL se apaga automáticamente para liberar recursos del sistema como la memoria.

Este comportamiento es el diseño predeterminado de WSL2: no es ni un fallo ni un error.

2. ¿Por qué Microsoft diseñó WSL de esta manera? ​

2.1 WSL2 es, en esencia, una máquina virtual ligera ​

WSL2 ejecuta un kernel Linux completo mediante una máquina virtual ligera de Hyper-V (utility VM). Cada distribución en ejecución ocupa realmente recursos de memoria. Si todas las distribuciones permanecieran en segundo plano, una máquina que ejecutara varias distribuciones a la vez desperdiciaría cientos de MB e incluso varios GB de memoria, ralentizando el rendimiento general del equipo.

2.2 La filosofía de diseño de asignar recursos bajo demanda ​

La filosofía de diseño de Windows es "asignar recursos bajo demanda y liberarlos cuando no se usan":

  • Para la mayoría de los usuarios: abrir un terminal = necesitar Linux; cerrar el terminal = no necesitarlo por el momento;
  • Solo unos pocos usuarios necesitan que Linux funcione las 24 horas del día, los 7 días de la semana sin interrupciones.

Por eso WSL adopta la estrategia de "iniciar bajo demanda, detener en inactividad", devolviendo automáticamente al sistema recursos como la memoria cuando no se necesitan.

2.3 Analogía: apagar la luz al salir de la habitación ​

El "apagado automático por inactividad" de WSL es como apagar la luz al salir de una habitación: ahorra energía y es más eficiente. Pero para quienes "necesitan que la luz permanezca encendida", resulta molesto; y de ahí surge precisamente la necesidad del keep-alive.

TIP

Si necesita que Linux funcione de forma continua (por ejemplo, para desplegar servicios, ejecutar tareas programadas, montar un servidor de desarrollo, etc.), lea el siguiente capítulo y use WSL Dashboard para mantener activa la distribución.

3. Usar WSL Dashboard para iniciar un Linux mantenido activo ​

WSL Dashboard ofrece dos formas sencillas de mantener su distribución de Linux en ejecución.

Opción 1: Hacer clic en el botón "Iniciar" ​

En la lista "Distribuciones de Linux instaladas" de WSL Dashboard:

  1. Busque la distribución que desea mantener activa;
  2. Haga clic en el botón "Iniciar" de la fila de esa distribución.

Tras hacer clic, la distribución se activa de inmediato y sigue ejecutándose; mientras no la detenga de forma manual, no se apagará automáticamente por inactividad. Esta opción es adecuada para escenarios de keep-alive temporal en los que necesita que Linux funcione de forma continua ahora mismo.

Opción 2: Marcar "Iniciar automáticamente esta distribución cuando Windows se inicie." ​

En la lista "Distribuciones de Linux instaladas" de WSL Dashboard:

  1. Haga clic en el botón "Configuración" de la fila de la distribución deseada para abrir el diálogo de configuración;
  2. En el diálogo, marque "Iniciar automáticamente esta distribución cuando Windows se inicie.";
  3. Guarde la configuración.

Tras marcarla, la distribución se inicia automáticamente en cada inicio/inicio de sesión de Windows, sin ninguna operación manual, lo que permite un "keep-alive desde el arranque". Esta opción es adecuada para escenarios en los que Linux debe permanecer en línea durante mucho tiempo (como servidores de desarrollo o servicios residentes).

TIP

  • Solo la necesita temporalmente → use la Opción 1 (clic en "Iniciar");
  • Necesita estar en línea a largo plazo → use la Opción 2 (marque "Iniciar automáticamente esta distribución cuando Windows se inicie.").