stringtranslate.com

correlo

runit es un esquema de gestión de servicios e inicio para sistemas operativos tipo Unix que inicializa, supervisa y finaliza procesos en todo el sistema operativo. Runit es una reimplementación del conjunto de herramientas de supervisión de procesos daemontools [3] que se ejecuta en muchos sistemas operativos basados ​​en Linux, así como en sistemas operativos BSD y Solaris. Runit presenta la paralelización del inicio de los servicios del sistema, lo que puede acelerar el tiempo de arranque del sistema operativo. [4]

Cuando se ejecuta como un demonio de inicio , Runit es el antecesor directo o indirecto de todos los demás procesos. Es el primer proceso que se inicia durante el arranque y continúa ejecutándose hasta que se apaga el sistema. A menudo se utiliza con otros sistemas de inicio como un administrador de servicios independiente. En el rol de administrador de servicios, puede ser utilizado por usuarios sin privilegios para orquestar servicios personales, así como por root para administrar servicios que no son administrados por el sistema de inicio que se encuentra en uso.

Runit inicia Void Linux

Diseño

Runit se centra en ser una base de código pequeña, modular y portátil . En su función de inicialización, Runit se divide en tres etapas: inicialización única, supervisión de procesos y detención o reinicio. Si bien la primera y la tercera etapa deben adaptarse al sistema operativo específico en el que se ejecutan, la segunda etapa es portátil en todos los sistemas operativos compatibles con POSIX . [5] Las tres etapas se pueden configurar a través de tres archivos ejecutables (normalmente son scripts de shell) denominados, respectivamente, 1, 2 y 3.

La etapa 2 generalmente invoca un binario llamado runsvdir, que es el proceso responsable de la administración global del demonio: por cada demonio que encuentra en una carpeta que se le pasa por argumento, genera un perro guardián individual, cada uno de ellos inicia un demonio (y un servicio de registro eventualmente asociado a él) y lo reinicia si muere. En caso de que se agregue o elimine un demonio, mata al perro guardián o inicia uno nuevo. Se utilizan archivos ejecutables con nombres específicos para describir las diversas fases de la vida del demonio (ejecutar, verificar, finalizar, ...), puede interceptar señales enviadas y ejecutadas por scripts específicos si existen, y se crean tuberías con nombre para exponer interfaces para controlar el demonio.

Uso

Runit se puede utilizar como un reemplazo directo [6] para sysvinit , o como un supervisor de servicios (con sysvinit como el proceso PID 1 padre que ejecuta procesos especificados por el archivo inittab, o algún otro sistema de inicio). [7] La ​​pila de software RubyWorks capaz de ejecutar Ruby on Rails incorporó Runit a su suite. [8]

Adopción

Runit es el sistema de inicio predeterminado de:

Runit es un sistema de inicio disponible "oficialmente" para:

Referencias

  1. ^ Pape, Gerrit (10 de febrero de 2004). «lanzamiento de runit-1.0.0». gmane.comp.sysutils.supervision.general (Lista de correo). Archivado desde el original el 13 de diciembre de 2013. Consultado el 10 de diciembre de 2013 .
  2. ^ Pape, Gerrit (4 de octubre de 2009). «runit - instalación». smarden.org . Consultado el 10 de agosto de 2014 .
  3. ^ Purcell, Steve (11 de noviembre de 2007). "Init Scripts Considered Harmful" (Los scripts de inicio se consideran dañinos). sanityinc.com . Consultado el 12 de diciembre de 2013 .
  4. ^ Pape, Gerrit. "runit - beneficios" . Consultado el 23 de abril de 2013 .
  5. ^ Pape, Gerrit. "runit - beneficios" . Consultado el 23 de abril de 2013 .
  6. ^ Pape, Gerrit. "replacement init" (Reemplazando init) . Consultado el 11 de agosto de 2014 .
  7. ^ Pape, Gerrit. "Uso con inicialización tradicional" . Consultado el 11 de agosto de 2014 .
  8. ^ "Gestión de procesos con runit". rubyworks.rubyforge.org . Consultado el 14 de abril de 2014 .
  9. ^ "VoidLinux" . Consultado el 28 de junio de 2020 .
  10. ^ "Gentoo" . Consultado el 28 de abril de 2024 .

Enlaces externos