Runit est un système d'initialisation et de gestion des services pour les systèmes d'exploitation de type Unix . Il initialise, supervise et arrête les processus au sein du système. Runit est une réimplémentation de la boîte à outils de supervision de processus daemontools , compatible avec de nombreux systèmes d'exploitation Linux , ainsi qu'avec BSD et Solaris . Runit permet la parallélisation du démarrage des services système, ce qui peut accélérer le temps de démarrage du système d'exploitation.
Lorsqu'il est exécuté en tant que démon d'initialisation , Runit est l' ancêtre direct ou indirect de tous les autres processus. Il s'agit du premier processus lancé au démarrage du système et il reste actif jusqu'à son arrêt. Il est souvent utilisé conjointement avec d'autres systèmes d'initialisation comme gestionnaire de services distinct. Dans ce rôle, il permet aux utilisateurs non privilégiés d'orchestrer leurs services personnels, et à l'utilisateur root de gérer les services non pris en charge par le système d'initialisation en cours d'utilisation.
code source compact, modulaire et portable . En tant que module d'initialisation, Runit est divisé en trois étapes : initialisation unique, supervision des processus et arrêt ou redémarrage. Si les première et troisième étapes doivent être adaptées au système d'exploitation utilisé, la deuxième étape est portable sur tous les systèmes d'exploitation compatibles POSIX . Ces trois étapes peuvent être configurées via trois fichiers exécutables (généralement des scripts shell) nommés respectivement 1, 2 et 3.L'étape 2 invoque généralement un binaire nommé runsvdir, processus responsable de la gestion globale des démons : pour chaque démon trouvé dans un dossier qui lui est fourni en argument, il crée un processus de surveillance (watchdog) dédié . Chaque watchdog démarre un démon (et éventuellement un service de journalisation associé) et le redémarre en cas d'arrêt. Lorsqu'un démon est ajouté ou supprimé, le watchdog est arrêté ou un nouveau est créé. Des fichiers exécutables aux noms spécifiques décrivent les différentes phases du cycle de vie d'un démon (exécution, vérification, achèvement, etc.). Le processus peut intercepter les signaux envoyés et exécutés par des scripts spécifiques, le cas échéant, et des canaux nommés sont créés pour exposer des interfaces de contrôle du démon.
Usage
Runit peut être utilisé soit comme un remplacement direct de sysvinit , soit comme superviseur de services (sysvinit étant le processus parent PID 1 qui exécute les processus spécifiés par le fichier inittab, ou un autre système d'initialisation). La suite logicielle RubyWorks, capable d'exécuter Ruby on Rails, intègre Runit.
Adoption
Runit est le système d'initialisation par défaut de :
- antiX ( basé sur Debian , depuis la version 19)
- Dragora GNU/Linux-Libre (depuis Dragora 2)
- Void Linux
Runit est un système d'initialisation « officiellement » disponible pour :
- Artix Linux ( basé sur Arch )
- Devuan ( basé sur Debian , depuis la version 3.1.0)
- Gentoo Linux
- Hyperbola GNU/Linux-libre ( basé sur Arch et Debian )
Plus d articles de Worldlex Wiki
Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.
Explorer l index