Proxmox Portátil Tapa Cerrada

Proxmox HomeLab tutorial Laptop

Cómo evitar que Proxmox se suspenda al cerrar la tapa de un portátil

Imagen Visual Tapa Portátil

En mi caso, uno de mis servidores Proxmox lo tengo alojado en un portátil por temas de consumo energético.

Si al igual que yo utilizas un portátil como servidor con Proxmox VE, puedes encontrarte con un problema bastante común: al cerrar la tapa del portátil, el sistema entra en suspensión (o se apaga) y, como consecuencia, las máquinas virtuales, contenedores y servicios dejan de estar disponibles.

Por defecto, Linux puede interpretar el cierre de la tapa como una orden para suspender el equipo. En un servidor esto no suele ser lo que queremos.

Así que en este post voy a enseñar cómo configurar Proxmox para que cerrar la tapa del portátil no haga absolutamente nada, permitiendo mantener el servidor funcionando aunque la pantalla esté cerrada.

El Problema

En mi caso tengo un portátil ejecutando Proxmox VE como servidor.

Mientras la pantalla esté abierta, todo funciona bien. Sin embargo, al cerrar la tapa, el equipo entra en suspensión y el servidor deja de responder.

Esto pasa porque Proxmox está basado en Debian, y utiliza systemd para gestionar determinados eventos relacionados con la alimentación y el cierre de la tapa.

La configuración relevante se encuentra en:

/etc/systemd/logind.conf

Así que lo primero que vamos a hacer es comprobar la configuración actual

Lo primero es comprobar cómo está configurado actualmente systemd-logind.

Así que vamos a entrar en la shell de Proxmox:

Imagen Proxmox

Desde una consola de Proxmox o por SSH ejecutamos:

cat /etc/systemd/logind.conf | grep -E 'HandleLidSwitch|HandleLidSwitchExternalPower'

Si aparecen líneas como estas:

#HandleLidSwitch=suspend
#HandleLidSwitchExternalPower=suspend
#HandleLidSwitchDocked=ignore

Significa que las opciones están comentadas y se está utilizando el comportamiento predeterminado de systemd-logind.

En muchos sistemas, ese comportamiento consiste en suspender el equipo cuando se cierra la tapa.

Así que vamos a modificar logind.conf

Editamos el archivo de configuración:

nano /etc/systemd/logind.conf

Imagen con las líneas descomentadas

Buscamos estas líneas:

#HandleLidSwitch=suspend
#HandleLidSwitchExternalPower=suspend
#HandleLidSwitchDocked=ignore

Imagen con las líneas comentadas

Y las modificamos para que queden así:

HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore

Imagen con las líneas descomentadas

La clave aquí es:

ignore

Con esta configuración estamos indicando a systemd-logind que ignore el evento de que sea al cerrar la tapa.

¿Qué significa cada opción?

HandleLidSwitch=ignore

Indica qué hacer cuando se cierra la tapa normalmente.

HandleLidSwitchExternalPower=ignore

Hace lo mismo cuando el portátil está conectado a la alimentación, vamos, cuando está cargando.

HandleLidSwitchDocked=ignore

Evita que el comportamiento cambie cuando el sistema considera que está conectado a una estación de acoplamiento o configuración similar.

Para un portátil utilizado como servidor, establecer las tres opciones en ignore nos deja cerrar la pantalla sin suspender el equipo.

Aplicar los cambios

Después de guardar el archivo, podemos reiniciar el servicio:

systemctl restart systemd-logind

Imagen con las líneas descomentadas

Aunque también es podríamos reiniciar el servidor para asegurarnos de que toda la configuración se carga desde cero:

reboot

En mi caso no pasa nada porque simplemente se reinicia el equipo, pero si alguien lo hace por SSH debe tener en cuenta de que al reiniciar lo expulsará de la máquina.

Lo ideal sería al reiniciar, comprobar que la configuración se ha aplicado

Podemos verificar que las opciones ya no están comentadas ejecutando:

cat /etc/systemd/logind.conf | grep HandleLidSwitch 

Imagen de la comprobación

La salida esperada es:

HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore

Es importante que revisemos que no aparezca el # al principio de las líneas.

Por ejemplo:

#HandleLidSwitch=ignore

No estaría activo.

Mientras que:

HandleLidSwitch=ignore

Sí estaría activo.

Resultado

Una vez puesta esta configuración, podemos cerrar la tapa del portátil sin que systemd-logind ordene suspender el sistema.

Después de aplicar los cambios, podemos cerrar la tapa tranquilamente y dejar que Proxmox continúe funcionando como servidor con los servicios o lo que tengamos aún activos.


Importante:

Importante: esta configuración evita la acción asociada al cierre de la tapa, pero no impide que el sistema pueda suspenderse por otras causas o por otras configuraciones de gestión de energía. Si el servidor sigue suspendiéndose, habría que revisar también las políticas de systemd, ACPI y la configuración de energía del propio hardware, pero claro, eso depende ya de cada dispositivo, así que esto es lo que me ha funcionado a mí.