Búsqueda de sitios web

Los 6 mejores sistemas 'init' de Linux modernos (1992-2023)


En Linux y otros sistemas operativos tipo Unix, el proceso init (inicialización) es el primer proceso ejecutado por el kernel en el momento del arranque, el cual tiene un ID de proceso (PID) de 1, que se ejecuta en segundo plano hasta que se apaga el sistema.

El proceso init inicia todos los demás procesos de Linux, es decir, demonios, servicios y otros procesos en segundo plano; por lo tanto, es la madre de todos los demás procesos del sistema.

Un proceso puede iniciar muchos otros procesos secundarios en el sistema, pero si un proceso principal muere, init se convierte en el padre del proceso huérfano.

A lo largo de los años, han surgido muchos sistemas init en las principales distribuciones de Linux y, en esta guía, veremos algunos de los mejores sistemas init con los que puede trabajar en el sistema operativo Linux.

1. Inicio del sistema V

System V (SysV) es un esquema init maduro y popular en sistemas operativos tipo Unix, es el padre de todos los procesos en un sistema Unix/Linux. SysV es el primer sistema operativo Unix comercial diseñado.

Casi todas las distribuciones de Linux utilizaron por primera vez el esquema de inicio SysV excepto Gentoo que tiene un inicio personalizado y Slackware que utiliza el esquema de inicio estilo BSD.

Con el paso de los años, debido a algunas imperfecciones, se han desarrollado varios reemplazos de SysV init en la búsqueda de crear sistemas de inicio más eficientes y perfectos para Linux.

Aunque estas alternativas buscan mejorar SysV y probablemente ofrecer nuevas funciones, siguen siendo compatibles con los scripts de inicio de SysV originales.

2. SistemaD

SystemD es un esquema de inicio relativamente nuevo en la plataforma Linux. Introducido en Fedora 15, es una variedad de herramientas para una fácil administración del sistema. El objetivo principal es inicializar, administrar y realizar un seguimiento de todos los procesos del sistema durante el proceso de inicio y mientras el sistema se está ejecutando.

Systemd init se diferencia completamente de otros sistemas init tradicionales de Unix, en la forma práctica en que aborda la gestión de sistemas y servicios. También es compatible con scripts de inicio SysV y LBS.

Tiene algunas de las siguientes características eminentes:

  • Diseño limpio, sencillo y eficiente
  • Procesamiento concurrente y paralelo en el arranque
  • Mejor APIv
  • Permite la eliminación de procesos opcionales.
  • Admite el registro de eventos mediante journald
  • Admite la programación de trabajos utilizando temporizadores de calendario systemd
  • Almacenamiento de registros en archivos binarios.
  • Preservación del estado del sistema para referencia futura.
  • Mejor integración con GNOME y muchas más

3. Advenedizo

Upstart es un sistema de inicio basado en eventos desarrollado por los creadores de Ubuntu como reemplazo del sistema de inicio SysV. Inicia diferentes tareas y procesos del sistema, los inspecciona mientras el sistema está en ejecución y los detiene durante el apagado del sistema.

Es un sistema de inicio híbrido que utiliza scripts de inicio SysV y scripts Systemd. Algunas de las características notables del sistema de inicio Upstart incluyen:

  • Desarrollado originalmente para Ubuntu Linux pero puede ejecutarse en todas las demás distribuciones.
  • Inicio y parada de tareas y servicios basados en eventos
  • Los eventos se generan durante el inicio y la parada de tareas y servicios.
  • Los eventos pueden ser enviados por otros procesos del sistema.
  • Comunicación con el proceso init a través de D-Bus
  • Los usuarios pueden iniciar y detener sus procesos.
  • Reaparición de servicios que mueren abruptamente y muchos más

4. OpenRC

OpenRC es un esquema init basado en dependencias para sistemas operativos tipo Unix, es compatible con SysV init. Por mucho que traiga algunas mejoras a Sys V, debes tener en cuenta que OpenRC no es un reemplazo absoluto para el archivo /sbin/init.

Ofrece algunas características ilustres que incluyen:

  • Puede ejecutarse en otras muchas distribuciones de Linux, incluido Gentoo, y también en BSD.
  • Admite scripts de inicio iniciados por hardware
  • Admite un único archivo de configuración
  • No se admiten configuraciones por servicio
  • Corre como un demonio
  • Puesta en marcha de servicios paralelos y muchos más

5. ejecutar

runit también es un sistema de inicio multiplataforma que puede ejecutarse en GNU/Linux, Solaris, *BSD y Mac OS X y es una alternativa a SysV init, que ofrece supervisión de servicios.

Viene con algunos beneficios y componentes notables que no se encuentran en SysV init y posiblemente en otros sistemas de inicio en Linux y estos incluyen:

  • Supervisión de servicios, donde cada servicio está asociado a un directorio de servicios.
  • Un estado de proceso limpio garantiza que cada proceso esté limpio.
  • Tiene una instalación de registro confiable.
  • Arranque y apagado rápido del sistema
  • También es portátil
  • Amigable con el embalaje
  • Tamaño de código pequeño y mucho más

6. T6

s6 ofrece un conjunto compacto de herramientas para UNIX, diseñadas para la supervisión de procesos, similar a daemontools y runit. Facilita las operaciones sobre procesos y demonios.

Diseñado como un conjunto de herramientas de administración de servicios de bajo nivel, s6 proporciona diversas herramientas que pueden funcionar de forma independiente o dentro de su marco. Estas herramientas, cuando se combinan, ofrecen una funcionalidad sólida con un código mínimo.

Como mencioné anteriormente, el sistema init inicia y administra todos los demás procesos en un sistema Linux. Además, SysV es el esquema de inicio principal en los sistemas operativos Linux, pero debido a algunas debilidades de rendimiento, los programadores de sistemas han desarrollado varios reemplazos para él.

Aquí analizamos algunos de esos reemplazos, pero podría haber otros sistemas de inicio que crea que vale la pena mencionar en esta lista. Puede informarnos sobre ellos a través de la sección de comentarios a continuación.