Na voljo je inicializacijski sistem Finit 4.0

Po približno treh letih razvoja je bila objavljena izdaja inicializacijskega sistema Finit 4.0 (Fast init), ki je bil razvit kot preprosta alternativa SysV init in systemd. Projekt temelji na razvoju, ustvarjenem z obratnim inženiringom inicializacijskega sistema fastinit, ki se uporablja v vdelani programski opremi Linux za netbooke EeePC in je znan po zelo hitrem zagonskem procesu. Sistem je primarno namenjen zagonu kompaktnih in vgrajenih sistemov, lahko pa se uporablja tudi za običajna namizna in strežniška okolja. Vzorci izvedbenih skriptov so bili pripravljeni za Void Linux, Alpine Linux in Debian GNU/Linux. Koda projekta je napisana v C in se distribuira pod licenco MIT.

Finit podpira ravni izvajanja v slogu inicializacije SysV, spremljanje stanja procesov v ozadju (samodejni ponovni zagon storitve v primeru okvare), izvajanje enkratnih obdelovalcev, zagon storitev ob upoštevanju odvisnosti in poljubnih pogojev, pripenjanje dodatnih obdelovalcev za izvajanje pred ali po izvedba storitve. Storitev lahko na primer konfigurirate tako, da se zažene šele, ko je dostop do omrežja na voljo ali ko se zažene kakšna druga storitev, kot je syslogd. Cgroups v2 se uporablja za nastavitev omejitev.

Za razširitev funkcionalnosti in prilagajanje vašim potrebam je mogoče uporabiti vtičnike, za katere je na voljo sistem kavljev, ki vam omogoča pritrditev upravljalnika na različne stopnje nalaganja in izvajanja storitev ter zagotavljanje vezave na zunanje dogodke. Na primer, vtičniki so pripravljeni za podporo D-Bus, ALSA, netlink, resolvconf, vroče priključitve naprav, preverjanje razpoložljivosti in nalaganja modulov jedra, obdelavo datotek PID in nastavitev okolja za strežnik X.

Podprta je uporaba standardnih skriptov za zagon storitev, ustvarjenih za SysV init (/etc/rc.d in /etc/init.d se ne uporabljata, vendar je podporo za /etc/inittab mogoče implementirati prek vtičnika), kot tudi rc.local skripte, datoteke s spremenljivkami okoljskih in omrežnih nastavitev /etc/network/interfaces, kot v Debianu in BusyBoxu. Nastavitve je mogoče določiti v eni konfiguracijski datoteki /etc/finit.conf ali porazdeliti v več datotek v imeniku /etc/finit.d.

Upravljanje se izvaja prek standardnih orodij initctl in run-parts, ki vam omogočajo aktiviranje in deaktiviranje storitev glede na ravni izvajanja ter selektivni zagon nekaterih storitev. Finit vključuje tudi vgrajeno implementacijo getty (terminal in upravljanje prijave uporabnikov), čuvaj za spremljanje zdravja in način obnovitve po zrušitvi z vgrajenim suloginom za izvajanje izolirane ukazne lupine.

Na voljo je inicializacijski sistem Finit 4.0

Med spremembami, dodanimi v izdaji Finit 4.0 (različica 3.2 je bila preskočena zaradi sprememb, ki so prekinile združljivost za nazaj):

  • Ločen pripomoček za ponovni zagon je bil nadomeščen s simbolično povezavo do initctl, podobno pripomočkom za zaustavitev, zaustavitev, izklop in začasno zaustavitev.
  • Indikacija napredka operacij je bila implementirana.
  • Delovanje ukazov »inictl cond set|clear COND« je bilo spremenjeno, da veže dejanja na različne dogodke. Sintaksa, ki se uporablja za identifikacijo storitev, je namesto vezave na poti .
  • Odstranjena je bila vgrajena izvedba strežnika inetd, kamor je po potrebi mogoče namestiti xinetd.
  • Dodana podpora za cgroups v2 za izvajanje storitev v ločenih cgroups.
  • Dodan način za obnovitev po zrušitvi z lastnim susloginom.
  • Dodana podpora za zagon/ustavitev skriptov iz SysV init.
  • Dodani upravljalniki pre:script in post:script, ki vam omogočajo, da določite svoja dejanja, izvedena pred ali ob zagonu storitve.
  • Dodana podpora za env:file s spremenljivkami okolja.
  • Dodana možnost sledenja poljubnim datotekam PID.
  • Dodana možnost za zagon opravil in storitev z uporabo relativnih poti.
  • Dodana možnost »-b« v initctl za izvajanje dejanj v neinteraktivnem načinu (paketni način).
  • Vgrajeni čuvaj je bil nadomeščen z ločeno različico watchdogd.
  • Dodan vtičnik za samodejno nalaganje modulov jedra za naprave, povezane med delovanjem.
  • Dodan vtičnik za obdelavo /etc/modules-load.d/.
  • Dodana podpora za samodejni ponovni zagon storitev po spremembi nastavitev, kar vam omogoča, da storite brez ročnega izvajanja ukaza »initctl reload«. Privzeto onemogočeno in zahteva vnovično izdelavo z "./configure --enable-auto-reload".
  • Dodana možnost beleženja operacij, ki vplivajo na varnost, kot je spreminjanje ravni izvajanja, zagon in zaustavitev storitev ter napake storitev.
  • Izboljšana podpora za /etc/network/interfaces.

    Vir: opennet.ru

Dodaj komentar