Pas pas një periudhë prej rreth tre vjetësh zhvillim, u botua versioni i sistemit të inizializimit Finit 4.0 (Fast init), i zhvilluar si një alternativë e thjeshtë ndaj SysV init dhe systemd. Projekti bazohet në punën e kryer gjatë inxhinierisë prapavepruese të sistemit të inizializimit fastinit, i përdorur në firmware-n Linux të netbook-ut EeePC dhe është e njohur për procesin e ngarkimit shumë të shpejtë. Sistemi është parë kryesisht për të siguruar ngarkimin e sistemeve kompakte dhe të integruara, por gjithashtu mund të përdoret për mjedise desktop dhe serverësh të zakonshëm. Shembujt e skenarëve për implementim janë përgatitur për Void Linux, Alpine Linux dhe Debian GNU/Linux. Kodi i projektit është shkruar në gjuhën C dhe shpërndahet nën licencën MIT.
Finit mbështet nivelet e ekzekutimit (runlevel) në stilin e SysV init, ndjekjen e funksionimit të proceseve në sfond (rikthimin automatik të shërbimit në rast dështimi), ekzekutimin e trajtuesve të përkohshëm, nisjen e shërbimeve duke marrë parasysh varësitë dhe kushte të rastësishme, si dhe lidhjen e trajtuesve shtesë për të nisur përpara ose pas ekzekutimit të shërbimit. Për shembull, mund të konfigurohet nisja e shërbimit vetëm pas krijimit të qasjes në rrjet ose pasi të nisë një shërbim tjetër, si syslogd. Për të vendosur kufizime përdoren Cgroups v2.
Për të zgjeruar funksionalitetin dhe për ta përshtatur sipas nevojave të tyre, mund të përdoren plugin-et, për të cilat është ofruar një sistem hook-ësh, i cili lejon lidhjen e një trajtuesi në faza të ndryshme të ngarkimit dhe ekzekutimit të shërbimeve, si dhe të sigurojë lidhjen me ngjarje të jashtme. Për shembull, janë përgatitur plugin-e për mbështetje të D-Bus, ALSA, netlink, resolvconf, lidhjen e nxehtë të pajisjeve, verifikimin e disponueshmërisë dhe ngarkimin e moduleve të bërthamës, trajtimin e skedarëve PID dhe konfigurimin e mjedisit për X-server.
Mbështetet përdorimi i skenarëve tipikë për nisjen e shërbimeve, të krijuar për SysV init (/etc/rc.d dhe /etc/init.d nuk përdoren, por mbështetje për /etc/inittab mund të realizohet përmes një plguini), si dhe skenarë rc.local, skedarë me variabla ambienti dhe konfigurime rrjeti /etc/network/interfaces, ashtu si në Debian dhe BusyBox. Cilësimet mund të përcaktohen ose në një skedar të vetëm konfigurimi /etc/finit.conf, ose të shpërndahen në disa skedarë në direktorinë /etc/finit.d.
Menaxhimi kryhet përmes një instrumentar të tipit initctl dhe run-parts, i cili lejon aktivizimin dhe deaktivizimin e shërbimeve lidhur me nivelet e nisjes, si dhe ekzekutimin selektiv të një pjese të shërbimeve. Finit gjithashtu përfshin një implementim të integruar të getty (menaxhimi i terminalit dhe hyrja e përdoruesve), një watchdog për ndjekjen e funksionimit dhe një mod për rikuperim pas dështimit me sulogin të integruar për nisjen e një shkallë të nënkuptuar të komandave.

Në mesin e ndryshimeve të shtuar në versionin Finit 4.0 (versioni 3.2 u kalua për shkak të ndryshimeve që cënojnë përputhshmërinë prapavepruese):
- Utilita e veçantë reboot u zëvendësua me një lidhje simbolike në initctl, ashtu si utilitat halt, shutdown, poweroff dhe suspend.
- U realizua indikimi i përparimit të operacioneve.
- Punimi i komandave «inictl cond set|clear COND» është ndryshuar për të lidhur veprimet me ngjarje të ndryshme. Për identifikimin e shërbimeve është angazhuar sintaksa në vend të lidhjes me rrugët .
- U hoq implementimi i integruar server inetd, nëse është e nevojshme mund të instalosh xinetd.
- E shtuar mbështetje për cgroups v2 për të nisur shërbimet në cgroup të veçanta.
- E shtuar një mod për rikuperim pas dështimit me sulogin të vet.
- E shtuar mbështetje për skenarët start/stop nga SysV init.
- E shtuar trajtuesit pre:script dhe post:script, duke lejuar caktimin e veprimeve tuaja për t'u kryer para ose pas nisjes së shërbimit.
- E shtuar mbështetje për env:file me variabla ambienti.
- E shtuar mundësia për ndjekjen e skedarëve PID të rastësishëm.
- E shtuar mundësia për të nisur detyra dhe shërbime duke përdorur rrugë relative.
- Në initctl është shtuar opsioni «-b» për të ekzekutuar veprime në modin jo-interaktiv (batch mode).
- Watchdog-i i integruar është zëvendësuar me një variant të veçantë watchdogd.
- E shtuar një plugin për ngarkimin automatik të moduleve të bërthamës për pajisjet e lidhura gjatë funksionimit.
- E shtuar një plugin për trajtimin e /etc/modules-load.d/.
- E shtuar mbĂ«shtetje pĂ«r rikthimin automatik tĂ« shĂ«rbimeve pas ndryshimeve tĂ« cilĂ«simeve, duke lejuar evitimin e ekzekutimit manual tĂ« komandĂ«s «initctl reload». Nga e drejta, Ă«shtĂ« e çaktivizuar dhe kĂ«rkon ri-ndĂ«rtimin me «./configure âenable-auto-reload».
- E shtuar mundësia për mbajtjen e një logu të operacioneve që ndikojnë në sigurinë, si ndryshimi i runlevel, nisja dhe ndalimi i shërbimeve, dështimi i shërbimeve.
- Përmirësuar mbështetje për /etc/network/interfaces.
Burimi: opennet.ru
