| Créateur | Roy Marples |
|---|---|
| Développé par | OpenRC Developers |
| Première version | |
| Dernière version | 0.63.3 () |
| Dépôt | https://github.com/OpenRC/openrc |
| Écrit en |
C bsh |
| Système d'exploitation |
Linux FreeBSD NetBSD |
| Taille des données | ˜1,6 Mo |
| Type | Daemon init |
| Licence | BSD |
| Site web | https://wiki.gentoo.org/wiki/OpenRC |
OpenRC est un système d'initialisation basé sur les dépendances pour les systèmes d'exploitation de type Unix. Il a été créé par Roy Marples, un développeur NetBSD également actif au sein du projet Gentoo,.

OpenRC est le système d'initialisation ou le superviseur de processus (en) par défaut pour :
OpenRC est disponible en tant que système d'initialisation ou superviseur de processus (en) pour :
OpenRC se compose de plusieurs composants modulaires, les principaux étant un système d'initialisation (optionnel), le système central de gestion des dépendances et un superviseur de démons (optionnel). Il est écrit en C et en shell compatible POSIX, ce qui le rend utilisable sur les systèmes BSD et Linux.
Le cœur d'OpenRC gère la dépendance et l'analyse des scripts d'initialisation. OpenRC fonctionne en parcourant les niveaux d'exécution (runlevels), en construisant un graphe de dépendances, puis en lançant les scripts de service nécessaires. Il se termine une fois les scripts lancés. Par défaut, OpenRC utilise une version modifiée de start-stop-daemon pour la gestion des démons.
Les scripts d'initialisation présentent des similitudes avec ceux utilisés dans sysvinit, mais offrent plusieurs fonctionnalités pour en simplifier la création. Les scripts sont censés inclure les fonctions start(), stop() et status(). Le système utilise des variables déjà déclarées pour générer les fonctions par défaut. La fonction depend est utilisée pour déclarer les dépendances envers d'autres services, une tâche qui, sous sysvinit, s'effectuait via des en-têtes LSB. La configuration et le mécanisme sont dissociés : les fichiers de configuration se trouvent dans le répertoire conf.d et les scripts d'initialisation dans le répertoire init.d.
openrc-init est apparu pour la première fois dans la version 0.25 en tant que remplaçant optionnel de /sbin/init. Il peut se substituer à sysvinit, le système d'initialisation par défaut de Gentoo Linux.
Supervise-daemon est apparu dans la version 0.21, dotant OpenRC de capacités de supervision. Il peut être activé dans le script d'initialisation pour lancer et surveiller un démon. D'autres superviseurs de démons sont également pris en charge, notamment runit et s6.