OpenRCOriginal author(s)Roy MarplesDeveloper(s)OpenRC DevelopersInitial release5 April 2007; 15 years ago (2007-04-05)Stable release0.45.2 / 3 July 2022; 52 days ago (2022-07-03)Repository github.com/OpenRC/openrc веза=https://www.wikidata.org/wiki/Q3273885#P1324|врхтекста|class=noprint|безоквира|10x10пиксел|Edit this at WikidataWritten inC, ShellOperating systemLinux, FreeBSD, NetBSDSize~900 KBTypeInit daemonLicense2-clause BSD licenseWebsitewiki.gentoo.org/wiki/Project:OpenRC OpenRC је init систем који је заснован на зависности за оперативне системе рачунара који су слични Unix- у. Креирао га је Рој Марплес, NetBSD програмер који је такође био активан у Gentoo пројекту. Постао је шире прихваћен као init систем изван Gentoo пројекта након одлуке неких Линукс дистрибуција да не усвоје systemd . веза=//upload.wikimedia.org/wikipedia/commons/thumb/4/43/Openrc-artix.png/316px-Openrc-artix.png|мини|329x329пиксел| OpenRC покреће Artix Linux мини|315x315пиксел|Процес покретања

Усвајање OpenRC је подразумевани init систем и/или супервизор процеса за:

Alpine Linux Funtoo Gentoo Linux Hyperbola GNU/Linux-libre Maemo Leste Nitrux

OpenRCје доступан init систем и/или супервизор процеса за:

Artix Linux Devuan Parabola GNU/Linux-libre Arch Linux

Дизајн OpenRC се састоји од неколико модуларних компоненти, од којих су главне init (опционо), основни систем за управљање зависношћу и daemon супервизор (опционо). Написан је у љусци компатибилној са C и POSIX - прихватљив shell програм (Portable Operating System Interface) , што га чини употребљивим на BSD и Линукс системима.

Основни део OpenRC-а се бави управљањем зависностима и рашчлањивањем init скрипте. OpenRC ради тако што скенира нивое покретања, гради графикон зависности, а затим покреће скрипте које су потребне да се изврше . Завршава се тек онда када су скрипте покренуте. OpenRC подразумевано користи модификовану верзију старт-стоп-daemon-а за управљање daemon-има.

Init скрипте своје сличности деле са скриптама које се користе у sysvinit- у, али нуде и неколико функција које служе да се њихово креирање поједностави. Претпоставља се да скрипте имају , и ; а систем користи променљиве које су већ декларисане да би креирао подразумеване функције. Функција зависности се користи за декларисање зависности од других услуга које би се радиле са LSB заглављима у sysvinit-у. Конфигурација и механизам су раздвојени конфигурационим датотекама у директоријуму conf.d и init датотекама у директоријуму init.d.

Openrc-init се први пут појавио у верзији 0.25 као замена за /sbin/init која није обавезна већ опциона. Подржано је неколико других покретача, укључујући sysvinit и Busybox . OpenRC

Надзирући-daemon се први пут појавио у верзији 0.21 дајући OpenRC могућности надзора. Може се омогућити у init скрипти за надзирућег-daemon да се покрене и надгледа daemon-а. Подржано је неколико других daemon-ских супервизора, укључујући runit и s6 .

Карактеристике

Преносив између Линукс- а, FreeBSD -а и NetBSD -а Покретање паралелног сервиса (подразумевано је да је искључено) Покретање које је засновано на зависности Процес сегрегације кроз cgroups Ограничења ресурса по услузи (ulimit) Раздвајање кода и конфигурације (init.d / conf.d) Прошириве скрипте за покретање init скрипте са стањем ( да ли је већ покренута? ) Комплексне init скрипте за покретање више компоненти ( Самба [smbd and nmbd], NFS [nfsd, portmap, итд. ]) Аутоматско израчунавање зависности и наручивање услуга Модуларна архитектура и раздвајање опционих компоненти ( cron, syslog ) Експресивно и флексибилно руковање мрежом (укључујући VPN, мостове, итд. ) Опширни режим за отклањање грешака

Референце

Категорија:Софтвер са BSD лиценцом