Finit 4.0 inicializálási rendszer áll rendelkezésre

Körülbelül három évnyi fejlesztés után megjelent a Finit 4.0 (Fast init) inicializálási rendszer kiadása, amelyet a SysV init és systemd egyszerű alternatívájaként fejlesztettek ki. A projekt az EeePC netbookok linuxos firmware-jében használt fastinit inicializációs rendszer visszafejtésével létrehozott fejlesztéseken alapul, és figyelemre méltó a nagyon gyors rendszerindítási folyamatáról. A rendszer elsősorban kompakt és beágyazott rendszerek indítására szolgál, de használható hagyományos asztali és szerverkörnyezetekben is. Minta implementációs szkriptek készültek a Void Linux, az Alpine Linux és a Debian GNU/Linux számára. A projekt kódja C nyelven íródott, és az MIT licenc alatt kerül terjesztésre.

A Finit támogatja a SysV init stílusú futási szinteket, a háttérfolyamatok állapotának figyelését (hiba esetén a szolgáltatás automatikus újraindítása), az egyszeri kezelők végrehajtását, a szolgáltatások elindítását a függőségek és tetszőleges feltételek figyelembevételével, további kezelők csatolását az előtti vagy utáni futáshoz. szolgáltatás végrehajtása. Beállíthatja például, hogy egy szolgáltatás csak akkor induljon el, ha elérhető a hálózati hozzáférés, vagy miután más szolgáltatás, például a syslogd elindult. A Cgroups v2 a korlátozások beállítására szolgál.

A funkcionalitás bővítése és az Ön igényeihez való igazodás érdekében beépülő modulok használhatók, amelyekhez egy horogrendszert biztosítanak, amely lehetővé teszi egy kezelő csatlakoztatását a szolgáltatások betöltési és végrehajtási különböző szakaszaihoz, valamint külső eseményekhez való kötődést. Például olyan bővítményeket készítettek elő, amelyek támogatják a D-Bus, ALSA, netlink, resolvconf, az eszközök üzem közbeni csatlakoztatását, a kernelmodulok elérhetőségének és betöltésének ellenőrzését, a PID fájlok feldolgozását és az X szerver környezetének beállítását.

A SysV-inithez készített szolgáltatások indításához szabványos szkriptek használata támogatott (az /etc/rc.d és /etc/init.d nem használatos, de az /etc/inittab támogatása megvalósítható a bővítményen keresztül), valamint a rc.local szkriptek, fájlok környezeti és hálózati beállítási változókkal /etc/network/interfaces, mint a Debianban és a BusyBoxban. A beállítások megadhatók egy konfigurációs fájlban /etc/finit.conf, vagy eloszthatók több fájl között az /etc/finit.d könyvtárban.

A kezelés a szabványos initctl és run-parts eszközökön keresztül történik, amelyek lehetővé teszik a szolgáltatások aktiválását és deaktiválását a futási szintekhez képest, valamint egyes szolgáltatások szelektív elindítását. A Finit tartalmaz még egy beépített getty-megvalósítást (terminál- és felhasználói bejelentkezés-kezelés), egy watchdog-ot az állapotfigyeléshez, és egy összeomlás-helyreállítási módot beépített suloginnel egy elszigetelt parancshéj futtatásához.

Finit 4.0 inicializálási rendszer áll rendelkezésre

A Finit 4.0 kiadásban bevezetett módosítások közül (a 3.2-es verzió kimaradt a visszafelé kompatibilitást megsértő változtatások miatt):

  • A külön újraindító segédprogramot az initctl-re mutató szimbolikus hivatkozás váltotta fel, hasonlóan a leállítási, leállítási, kikapcsolási és felfüggesztési segédprogramokhoz.
  • A műveletek előrehaladásának jelzése megtörtént.
  • Az „inictl cond set|clear COND” parancsok működése megváltozott, hogy a műveleteket különféle eseményekhez rendelje. A szolgáltatások azonosítására használt szintaxis a ösvényekhez kötés helyett .
  • Eltávolították az inetd szerver beépített implementációját, ahova szükség esetén az xinetd telepíthető.
  • Támogatás hozzáadva a cgroups v2-hez a szolgáltatások különálló cgroupokban történő futtatásához.
  • Összeomlás-helyreállítási mód hozzáadva saját susloginnel.
  • Támogatás hozzáadva a SysV init indítási/leállítási parancsfájljaihoz.
  • Hozzáadott pre:script és post:script kezelők, amelyek lehetővé teszik a szolgáltatás indulása előtt vagy amikor végrehajtott műveletek megadását.
  • Hozzáadott támogatása az env:file környezeti változókkal.
  • Tetszőleges PID-fájlok nyomon követésének képessége hozzáadva.
  • Lehetővé tette a feladatok és szolgáltatások relatív útvonalak használatával történő indítását.
  • "-b" opció hozzáadva, hogy initctl műveleteket hajtson végre nem interaktív módban (kötegelt mód).
  • A beépített watchdogot a watchdogd egy külön verziója váltotta fel.
  • Beépülő modul hozzáadva a működés közben csatlakoztatott eszközök kernelmoduljainak automatikus betöltéséhez.
  • Beépülő modul hozzáadva az /etc/modules-load.d/ kezeléséhez.
  • Hozzáadott támogatás a szolgáltatások automatikus újraindításához a beállítások módosítása után, lehetővé téve az „initctl reload” parancs kézi végrehajtása nélkül. Alapértelmezés szerint le van tiltva, és újra kell építeni a következővel: "./configure --enable-auto-reload".
  • Hozzáadtuk a biztonságot befolyásoló műveletek naplózásának lehetőségét, például a futási szint megváltoztatását, a szolgáltatások indítását és leállítását, valamint a szolgáltatási hibákat.
  • Az /etc/network/interface továbbfejlesztett támogatása.

    Forrás: opennet.ru

Hozzászólás