Finit 4.0 initialiseringssystem tilgængeligt

Efter omkring tre års udvikling blev udgivelsen af ​​initialiseringssystemet Finit 4.0 (Fast init) udgivet, udviklet som et simpelt alternativ til SysV init og systemd. Projektet er baseret på udviklinger skabt ved omvendt udvikling af fastinit-initialiseringssystemet, der bruges i Linux-firmwaren på EeePC-netbooks og er kendt for sin meget hurtige opstartsproces. Systemet er primært rettet mod opstart af kompakte og indlejrede systemer, men kan også bruges til konventionelle desktop- og servermiljøer. Eksempler på implementeringsscripts er blevet forberedt til Void Linux, Alpine Linux og Debian GNU/Linux. Projektkoden er skrevet i C og distribueres under MIT-licensen.

Finit understøtter kørselsniveauer i SysV init-stilen, overvåger tilstanden af ​​baggrundsprocesser (automatisk genstart af tjenesten i tilfælde af fejl), eksekvering af engangshandlere, lancering af tjenester under hensyntagen til afhængigheder og vilkårlige forhold, vedhæftning af yderligere behandlere til at køre før eller efter serviceudførelse. For eksempel kan du konfigurere en tjeneste til kun at starte, når netværksadgang er tilgængelig, eller efter en anden tjeneste, såsom syslogd, er startet. Cgroups v2 bruges til at sætte begrænsninger.

For at udvide funktionaliteten og tilpasse til dine behov, kan plugins bruges, hvortil der leveres et system af kroge, der giver dig mulighed for at knytte en handler til forskellige stadier af indlæsning og eksekvering af tjenester, samt give binding til eksterne begivenheder. For eksempel er plugins blevet forberedt til at understøtte D-Bus, ALSA, netlink, resolvconf, hot plugging af enheder, kontrol af tilgængelighed og indlæsning af kernemoduler, behandling af PID-filer og opsætning af miljøet til X-serveren.

Brugen af ​​standardscripts til lancering af tjenester, der er oprettet til SysV init, er understøttet (/etc/rc.d og /etc/init.d bruges ikke, men understøttelse af /etc/inittab kan implementeres gennem pluginnet), samt rc.local scripts, filer med miljø- og netværksindstillingsvariabler /etc/network/interfaces, som i Debian og BusyBox. Indstillinger kan enten defineres i én konfigurationsfil /etc/finit.conf eller distribueres over flere filer i mappen /etc/finit.d.

Administrationen udføres gennem standardværktøjerne initctl og run-parts, som giver dig mulighed for at aktivere og deaktivere tjenester i forhold til kørselsniveauer, samt selektivt at starte nogle tjenester. Finit inkluderer også en indbygget getty-implementering (administration af terminal og brugerlogin), en vagthund til helbredsovervågning og en nedbrudsgendannelsestilstand med indbygget sulogin til at køre en isoleret kommandoskal.

Finit 4.0 initialiseringssystem tilgængeligt

Blandt ændringerne tilføjet i Finit 4.0-udgivelsen (version 3.2 blev sprunget over på grund af ændringer, der brød bagudkompatibiliteten):

  • Det separate genstartsværktøj er blevet erstattet med et symbolsk link til initctl, svarende til hjælpeprogrammerne stop, shutdown, poweroff og suspend.
  • Indikation af driftens fremskridt er blevet implementeret.
  • Betjeningen af ​​kommandoerne "inictl cond set|clear COND" er blevet ændret for at binde handlinger til forskellige begivenheder. For at identificere tjenester bruges syntaksen i stedet for at binde til stier .
  • Den indbyggede implementering af inetd-serveren er fjernet, hvor xinetd kan installeres om nødvendigt.
  • Tilføjet understøttelse af cgroups v2 for at køre tjenester i separate cgroups.
  • Tilføjet nedbrudsgendannelsestilstand med sit eget suslogin.
  • Tilføjet understøttelse af start/stop scripts fra SysV init.
  • Tilføjet pre:script og post:script handlere, der giver dig mulighed for at specificere dine handlinger udført før eller når tjenesten starter.
  • Tilføjet understøttelse af env:fil med miljøvariabler.
  • Tilføjet muligheden for at spore vilkårlige PID-filer.
  • Tilføjet muligheden for at starte opgaver og tjenester ved hjælp af relative stier.
  • Tilføjet "-b" mulighed for at initctl udføre handlinger i ikke-interaktiv tilstand (batch-tilstand).
  • Den indbyggede watchdog er blevet erstattet med en separat version af watchdogd.
  • Tilføjet et plugin til automatisk at indlæse kernemoduler til enheder tilsluttet under drift.
  • Tilføjet plugin til at håndtere /etc/modules-load.d/.
  • Tilføjet understøttelse for automatisk genstart af tjenester efter ændring af indstillinger, så du kan undvære manuelt at udføre kommandoen "initctl reload". Deaktiveret som standard og kræver genopbygning med "./configure --enable-auto-reload".
  • Tilføjet muligheden for at logge operationer, der påvirker sikkerheden, såsom ændring af runlevel, start og stop af tjenester og servicefejl.
  • Forbedret understøttelse af /etc/network/interfaces.

    Kilde: opennet.ru

Tilføj en kommentar