OpenRC es un sistema de inicio basado en dependencias para sistemas operativos de computadoras tipo Unix . Fue creado por Roy Marples, un desarrollador de NetBSD que también participó activamente en el proyecto Gentoo . [3] [4] Se adoptó más ampliamente como un sistema de inicio fuera de Gentoo luego de que algunas distribuciones de Linux decidieran no adoptar systemd . [5] [6] [7]
OpenRC es el sistema de inicio predeterminado y/o supervisor de procesos para:
OpenRC es un sistema de inicio y/o supervisor de procesos disponible para:
OpenRC está formado por varios componentes modulares, siendo los principales un init (opcional), el sistema de gestión de dependencias del núcleo y un supervisor de demonios (opcional). Está escrito en C y en un shell compatible con POSIX, lo que lo hace utilizable en sistemas BSD y Linux.
La parte principal de OpenRC se encarga de la gestión de dependencias y el análisis de scripts de inicio. OpenRC funciona escaneando los niveles de ejecución, creando un gráfico de dependencias y luego iniciando los scripts de servicio necesarios. Sale una vez que se han iniciado los scripts. De forma predeterminada, OpenRC utiliza una versión modificada de start-stop-daemon para la gestión de daemon. [10]
Los scripts de inicio comparten similitudes con los scripts utilizados en sysvinit , pero ofrecen varias características para simplificar su creación. Se supone que los scripts tienen start()
, stop()
y status()
; y el sistema usa variables ya declaradas para crear las funciones predeterminadas. [11] La función depend se usa para declarar dependencias a otros servicios que se harían con encabezados LSB en sysvinit. La configuración y el mecanismo están separados con archivos de configuración en el directorio conf.d y archivos de inicio en el directorio init.d.
Openrc-init apareció por primera vez en la versión 0.25 como un reemplazo opcional de /sbin/init
. Puede reemplazar al sistema de inicio predeterminado de Gentoo Linux, sysvinit. [12]
Supervise-daemon apareció por primera vez en la versión 0.21, que ofrecía capacidades de supervisión de OpenRC. Se puede habilitar en el script de inicio para supervisar-daemon para iniciar y monitorear un demonio. Se admiten otros supervisores de demonios, incluidos runit [13] y s6. [14]