5 labākās modernās Linux init sistēmas (1992-2015)


Linux un citās Unix līdzīgās operētājsistēmās process init (inicializācija) ir pirmais process, ko kodols izpilda sāknēšanas laikā. Tam ir procesa ID (PID) 1, tas tiek izpildīts fonā, līdz sistēma tiek izslēgta.

Inicializācijas process sāk visus pārējos procesus, tas ir, dēmonus, pakalpojumus un citus fona procesus, tāpēc tas ir visu citu sistēmas procesu māte. Process var sākt daudzus citus bērnu procesus sistēmā, bet, ja mirst vecāku process, init kļūst par bāreņu procesa vecāku.

Gadu gaitā galvenajos Linux izplatījumos ir parādījušās daudzas init sistēmas, un šajā rokasgrāmatā mēs aplūkosim dažas no labākajām init sistēmām, ar kurām varat strādāt Linux operētājsistēmā.

1. Sistēma V Init

Sistēma V (SysV) ir nobriedusi un populāra init shēma Unix līdzīgās operētājsistēmās, tā ir visu Unix/Linux sistēmas procesu vecākā. SysV ir pirmā komerciālā Unix operētājsistēma, kas izstrādāta.

Gandrīz visos Linux izplatījumos vispirms tika izmantota SysV init shēma, izņemot Gentoo, kurai ir pielāgota init un Slackware, izmantojot BSD stila init shēmu.

Gadiem ejot, dažu nepilnību dēļ meklējumos ir izstrādāti vairāki SysV init aizstājēji, lai izveidotu efektīvākas un perfektākas Linux sistēmas init.

Lai gan šīs alternatīvas cenšas uzlabot SysV un, iespējams, piedāvā jaunas funkcijas, tās joprojām ir saderīgas ar oriģinālajiem SysV init skriptiem.

2. SistēmaD

SystemD ir salīdzinoši jauna init shēma Linux platformā. Iepazīstināts ar Fedora 15, tas ir rīku sortiments ērtai sistēmas pārvaldībai. Galvenais mērķis ir inicializēt, pārvaldīt un sekot visiem sistēmas procesiem sāknēšanas procesā un sistēmas darbības laikā.

Systemd init visaptveroši atšķiras no citām tradicionālajām Unix init sistēmām, tādā veidā, kā tā praktiski tuvojas sistēmu un pakalpojumu pārvaldībai. Tas ir saderīgs arī ar SysV un LBS init skriptiem.

Tam ir dažas no šīm izcilajām iezīmēm:

  1. Tīrs, tiešs un efektīvs dizains
  2. Vienlaicīga un paralēla apstrāde sāknēšanas laikā
  3. labāks APIv
  4. iespējo izvēles procesu noņemšanu
  5. Atbalsta notikumu reģistrēšanu, izmantojot žurnālu
  6. Atbalsta darba plānošanu, izmantojot sistēmas kalendāra taimeri
  7. Žurnālu glabāšana bināros failos
  8. Sistēmas stāvokļa saglabāšana turpmākai izmantošanai
  9. Labāka integrācija ar GNOME un vēl daudz vairāk

Izlasiet Systemd init pārskatu: https://fedoraproject.org/wiki/Systemd

Lasiet arī: Stāsts aizmugurē: Kāpēc ‘init’ Linux vietā bija jāaizstāj ar ‘systemd’

3. Upstart

Upstart ir uz notikumiem balstīta init sistēma, kuru Ubuntu veidotāji ir izstrādājuši kā SysV init sistēmas aizstājēju. Tas sāk dažādus sistēmas uzdevumus un procesus, tos pārbauda, kamēr sistēma darbojas, un aptur tos, izslēdzot sistēmu.

Tā ir hibrīda init sistēma, kas izmanto gan SysV startēšanas skriptus, gan arī Systemd skriptus. Dažas no Upstart init sistēmas ievērojamākajām funkcijām ietver:

  1. Sākotnēji izstrādāts Ubuntu Linux, bet var darboties visos citos izplatījumos
  2. Uzdevumu un pakalpojumu sākšana un apturēšana, pamatojoties uz notikumiem
  3. Notikumi tiek ģenerēti uzdevumu un pakalpojumu uzsākšanas un apturēšanas laikā
  4. Notikumus var nosūtīt, izmantojot citus sistēmas procesus
  5. Saziņa ar init procesu, izmantojot D-Bus
  6. Lietotāji var sākt un pārtraukt paši savus procesus
  7. pēkšņi mirstošu pakalpojumu atkārtota nārstošana un daudzi citi

Apmeklējiet vietni: http://upstart.ubuntu.com/index.html

4. OpenRC

OpenRC ir uz atkarību balstīta init shēma Unix līdzīgām operētājsistēmām, tā ir saderīga ar SysV init. Lai arī tas nes dažus uzlabojumus Sys V, jums jāpatur prātā, ka OpenRC nav absolūts aizstājējs failam/sbin/init.

Tas piedāvā dažas izcilas funkcijas, un tās ietver:

  1. Tas var darboties citos daudzos Linux izplatījumos, tostarp Gentoo, kā arī BSD
  2. Atbalsta aparatūras iniciētus init skriptus
  3. Atbalsta vienu konfigurācijas failu
  4. netiek atbalstītas katra pakalpojuma konfigurācijas
  5. Darbojas kā dēmons
  6. Startēšana paralēlos pakalpojumos un daudz kas cits

Apmeklējiet vietni: https://wiki.gentoo.org/wiki/OpenRC

5. runit

runit ir arī starpplatformu init sistēma, kas var darboties GNU/Linux, Solaris, * BSD un Mac OS X, un tā ir SysV init alternatīva, kas piedāvā pakalpojumu uzraudzību.

Tam ir dažas priekšrocības un izcili komponenti, kas nav atrodami SysV init un, iespējams, citās Linux sistēmās, un tie ietver:

  1. Pakalpojuma uzraudzība, kur katrs pakalpojums ir saistīts ar pakalpojumu direktoriju
  2. Tīra procesa stāvoklis, tas katram procesam garantē tīru stāvokli
  3. Tai ir uzticama mežizstrādes iespēja
  4. Ātra sistēmas sāknēšana un izslēgšana
  5. tas ir arī pārnēsājams
  6. Iepakojumam draudzīgs
  7. mazs koda lielums un vēl daudz vairāk

Apmeklējiet mājas lapu: http://smarden.org/runit/

Kā jau iepriekš minēju, init sistēma sāk un pārvalda visus pārējos Linux sistēmas procesus. Turklāt SysV ir galvenā operētājsistēmas init shēma, taču dažu veiktspējas trūkumu dēļ sistēmas programmētāji ir izstrādājuši tai vairākus aizstājējus.

Un šeit mēs apskatījām dažus no šiem aizstājējiem, taču varētu būt arī citas init sistēmas, kuras, jūsuprāt, ir vērts pieminēt šajā sarakstā. Jūs varat informēt mūs par tiem, izmantojot zemāk esošo komentāru sadaļu.