Tutoriales

Comprender la operación de reinicio del espacio de usuario (reinicio suave) en Linux

Cuando su sistema Linux necesita ser reiniciado, está sucediendo más detrás de escena de lo que piensas. Una de las características más interesantes y útiles en las distribuciones modernas de Linux es Reinicio del espacio de usuario o Comienzo suave Operación.

Reiniciar el espacio de usuario permite:

  • Reinicie rápidamente la capa de servicio,
  • Cambiar a una nueva instantánea o raíz No cierre el núcleo del sistema operativo.
  • El tiempo de inactividad mínimo se utiliza para aplicar actualizaciones o moverse para limpiar el estado.

En esta guía, explicaremos Qué es el reinicio del espacio de usuariosus beneficios, cómo funciona y cómo Realizar un reinicio de espacio de usuario En Linux.

tl; dr.

uno Reinicio del espacio de usuario Indica que reinicias todo Además del firmware del núcleo y la máquina. Con Systemd 254/255+ puede usarlo para /run/nextroot/ Corriendo uno al lado del otro systemctl soft-reboot. El núcleo permanece, el dispositivo permanece configurado y la aplicación del usuario se reinicia limpiamente. Esto es ideal para actualizaciones atómicas con menor tiempo de inactividad.

¿Qué es un reinicio de espacio de usuario?

Un reinicio del sistema tradicional es como cerrar la fábrica por completo y comenzar desde cero nuevamente. Todo se detiene, el ciclo de potencia y todo el proceso comienza a comenzar de nuevo.

En Linux, así es como suelen funcionar los reinicios normales:

  1. Entraste sudo reboot o shutdown -r now.
  2. Systemd (PID 1) comienza a cerrar limpiamente. Envía sigloEntonces Siegela todos los servicios en ejecución Espacio de usuario.
  3. Entonces se ejecuta systemd-shutdown(8). Esto reinstala el sistema de archivos, desinstala el controlador y se prepara para salir o reiniciar el núcleo.
  4. Finalmente, el núcleo desencadena la máquina para pasar reboot() Teléfono del sistema.

El proceso completo incluye detener el programa de usuario, initrd, desinstalación del kernel, restablecimiento de firmware y fases de cargador de arranque.

Sin embargo, los reinicios del espacio de usuario son más como mantener la potencia de la fábrica cuando cada departamento se reinicia sistemáticamente en el orden correcto. Solo se reinicia Nivel de usuario Linux.

En términos técnicos, el espacio de usuario se reinicia (también conocido como Comienzo suave En Systemd o solo Reiniciar el usuario Típicamente,) reinicie todos los procesos de usuario y servicios del sistema sin reiniciar realmente el kernel en sí.

El núcleo permanece en funcionamiento, y todo lo anterior tiene un nuevo comienzo. Este enfoque puede ahorrar mucho tiempo y reducir el tiempo de inactividad del sistema.

Ahora, reinicie en una distribución moderna de Linux usando el espacio de usuarios Systemd 254/255 o actualizado.

Por ejemplo, Debian 13 «Trixie»Planeado para ser lanzado en unos pocos días, incluido soft-reboot Comandos listos para usar.

¿Cómo funciona? (Descripción general del proceso general)

Primero, System (Los sistemas de inicialización en la mayoría de las distribuciones modernas de Linux) emiten todas las ejecuciones para apagar con gracia. Los servicios se detienen en orden antidependencia, lo que significa que los servicios que dependen de que otros esperen a que sus dependencias se cierren primero.

A continuación, el sistema desinstala el sistema de archivos y realiza otras tareas de limpieza, al igual que durante el apagado normal. Sin embargo, el sistema conserva el estado del núcleo y comienza la secuencia de inicio nuevamente, en lugar de reiniciar el núcleo o la señalización.

Durante este proceso, el núcleo permanece activo, manteniendo conexiones de hardware y administración de memoria. Cuando se inicia el reinicio, Systemd comienza fresco y comienza todos los servicios como si fuera la primera vez que comienza.

En resumen, cuando activas un reinicio del espacio de usuario, Linux hace lo siguiente:

  1. Detener todos los procesos espaciales de usuario – Se han terminado servicios, aplicaciones y tareas de antecedentes.
  2. Reiniciar el espacio de usuario – El sistema comienza fresco desde el servicio predeterminado.
  3. Mantenga el núcleo en funcionamiento – No se produjo una recarga de hardware o controlador.

Cómo Systemd maneja el espacio de usuario se reinicia (detalles del sistema técnico)

Para respaldar este proceso, Systemd incluye un objetivo especial llamado soft-reboot.target. Cuando le pide a Systemd que «Boot Soft Boot» se detenga systemd-soft-reboot.service.

El servicio hace lo siguiente:

  • enviar siglo Para todos los procesos de usuario restantes (no se requiere esperar)
  • Luego enviar Siegel A cualquier sobreviviente
  • Si es un directorio /run/nextroot/ existe, cambia la raíz del sistema a este directorio
  • Entonces, Vuelva a ejecutar el sistema Continuar con la lógica de inicio normal desde la nueva raíz

De esta manera, Systemd borra el antiguo proceso del usuario y carga limpiamente el nuevo entorno – Mientras mantiene el núcleo en funcionamiento.

¿Cuándo debería reiniciar con UserSapace?

UserSpace Reinsart es útil cuando necesita reiniciar el servicio o aplicar la actualización No reinicie el núcleo.

En lugar de reiniciar todo el sistema, este método mantiene intactos el hardware y el estado del núcleo. Evita el uso de la verificación del BIOS, la inicialización del hardware y las secuencias de cargador de arranque.

Esto lo hace ideal:

  • Software de aplicación o actualizaciones de configuración
  • Reinicio limpio de los servicios del sistema
  • Reducir el tiempo de inactividad en los servidores
  • Acelerar el tiempo de reinicio en el escritorio y la computadora portátil

Funciona muy bien cuando necesita un nuevo entorno de espacio de usuario, pero no quiere tocar el núcleo o los controladores de dispositivos subyacentes.

Tenga en cuenta que las actualizaciones del núcleo, los cambios en el controlador de hardware o las modificaciones del sistema de bajo nivel aún requieren un reinicio completo.

Ejemplos: Ostree y Fedora SilverBlue

Ostree y Fedora SilverBlue son buenos ejemplos porque son Sistemas del mundo real que utilizan activamente las funciones de reinicio del espacio de usuarioespecialmente a través de Mecanismo de reinicio suave de Systemd.

Plateado Administrar el sistema operativo a través del modelo de instantánea Ultra. Al instalar actualizaciones:

  1. Ostree crea una nueva instantánea del sistema a continuación /var
  2. Vinculó la instantánea /run/nextroot/
  3. Al reiniciar, el sistema usa UserSapace para reiniciar el sistema y cambiar a esta nueva raíz

Los reinicios son más rápidos y seguros ya que el núcleo permanece en funcionamiento. Si tiene algún problema, también puede volver a la instantánea anterior sin reiniciar toda la máquina.

Cómo realizar UserSapace reiniciar en Linux

Primero, asegúrese de que su sistema admita esta función. usar Reinicio del espacio de usuario (systemctl soft-reboot),necesitas Systemd versión 254 o más nuevo.

Verifique que versión System Su sistema Linux está en uso, ejecute el siguiente comando en el terminal:

systemctl --version

Verá una salida como esta:

systemd 257 (257.4-3)
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +ZSTD +BZIP2 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified

La primera línea te dice Versión systemd. En la salida anterior, es 257.

Si ve una versión inferior a eso (como 252 o 249), su sistema aún no admite esta función.

En los sistemas modernos de Linux con SystemD, puede usar este comando para activar un reinicio de espacio de usuario:

sudo systemctl soft-reboot

Este comando le dice a SystemD que realice una secuencia de reinicio del espacio de usuario. Su sistema se registrará automáticamente. Inicie sesión para continuar usando el sistema.

Antes de ejecutar estos comandos, asegúrese de guardar su trabajo, ya que todas las aplicaciones estarán cerradas durante este proceso.

O (en algunos sistemas) puede usar el comando para realizar un arranque suave:

sudo kexec --user

Nota: No todas las distribuciones de Linux admiten esta característica.

Beneficios y limitaciones

El principal beneficio es la velocidad.

UserSpace Reinst se puede hacer en segundos en lugar de minutos. Dado que los ciclos de energía no ocurren, también reducen el desgaste en los componentes de hardware.

Este enfoque también tiene limitaciones.

Dado que el núcleo no se reiniciará, no se resolverán ningún problema de nivel de núcleo. Persistirán fugas de memoria o corrupción en el espacio del núcleo.

Además, no todos los estados de hardware se restablecen, lo que a veces puede conducir a dispositivos de mal comportamiento.

Mejores prácticas

Utilice UserSpace Reinter para el mantenimiento de rutina y las actualizaciones de software. Son ideales para aplicar actualizaciones de aplicaciones, reiniciar servicios o borrar archivos y procesos temporales.

Mantenga los reinicios tradicionales para las actualizaciones del núcleo, los cambios de hardware o la resolución de problemas de los problemas del sistema persistente.

Si no está seguro de si el cambio requiere un reinicio completo, generalmente es más seguro realizar un reinicio completo.

Después de reiniciar el espacio de usuarios, controle su sistema para asegurarse de que todas las funciones funcionen. Si bien es raro, algunas aplicaciones o servicios pueden no manejar tales reiniciados perfectamente.

¿Es realmente útil el reinicio suave de Linux?

Como ya he dicho, un reinicio tradicional puede llevar varios minutos, especialmente en sistemas con mucho hardware para inicializar o secuencias de inicio complejas.

Durante este tiempo, su sistema no está completamente disponible. Los reinicios del espacio de usuario pueden reducir en gran medida este tiempo de inactividad porque se omiten por completo la fase de inicialización de hardware.

Entonces los reinicios suaves son útiles porque:

  • Esto es Más rápido que el reinicio completo (porque el núcleo permanece en funcionamiento).
  • Sin realificación de hardware (Sin cheque BIOS/UEFI, sin recarga del núcleo).
  • Reinicie solo el proceso del usuario (Los servicios, aplicaciones y demonios tienen un reinicio).

Esta característica es útil en entornos de servidor donde cuesta el tiempo de inactividad cada minuto.

También es útil para los usuarios de escritorio que desean aplicar actualizaciones del sistema o reiniciar servicios sin esperar el ciclo de inicio completo.

en conclusión

UserSpace Reint es un truco útil para los usuarios de Linux que desean ahorrar tiempo. En lugar de esperar un reinicio completo, generalmente puede reiniciar el espacio de usuarios y volver a trabajar de inmediato.

Comprender el reinicio del espacio de usuario le proporciona otra herramienta para administrar efectivamente su sistema Linux. Ya sea que esté ejecutando un servidor doméstico o administre su infraestructura empresarial, saber cuándo y cómo usar esta función puede ahorrar tiempo y reducir las interrupciones del sistema.

La próxima vez que necesite reiniciar el servicio o aplicar actualizaciones, considere si las botas blandas satisfacen sus necesidades mejor que los reinicios tradicionales. Sus usuarios (y paciencia) pueden apreciar su tiempo de inactividad reducido.

recurso:

Lecturas relacionadas:

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba