Lugu init ja systemd taga: miks init tuli Linuxis asendada systemd-ga


Olen tellinud mitu meililisti, mis on seotud erinevate Linuxi jaotuste ja rakendustega, et end kursis hoida sellega, mis seal toimub. Mis on uued vead? Mis on välja antud plaastrid? Mida on oodata järgmises versioonis? ja palju muud kraami. Tänapäeval on meililistis palju asustatud\"Vali oma külg Linux Divide'is", peamiselt Debiani meililoendis koos mõne muu postitusloendiga.

Mõnes Linuxi jaotuses asendatakse deemon init deemoniga systemd , kuigi paljud neist on selle juba rakendanud. See loob/loob tohutu lõhe traditsiooniliste Unix/Linux Guard ja New Linux Guard - programmeerijate ja süsteemiadministraatorite vahel.

Selles artiklis käsitleme ja lahendame ükshaaval kõiki päringuid.

  1. Mis on init?
  2. Mis on systemd?
  3. Miks init tuli välja vahetada?
  4. Millised funktsioonid süsteemile kuuluvad.

Linuxis on init initsialiseerimise lühend. init on deemonprotsess, mis algab kohe, kui arvuti käivitub, ja töötab edasi, kuni see on välja lülitatud. Tegelikult on init esimene protsess, mis algab siis, kui arvuti käivitub, muutes selle otseselt või kaudselt kõigi muude käimasolevate protsesside vanemaks ja seega omistatakse sellele tavaliselt “ pid = 1 “.

Kui mingil moel init deemonit ei õnnestunud käivitada, ei alustata ühtegi protsessi ja süsteem jõuab staadiumisse nimega „ Kerneli paanika “. init nimetatakse kõige sagedamini kui System V init . Süsteem V on esimene kaubanduslik UNIX-i operatsioonisüsteem, mis on loodud ja tänapäeval on enamiku Linuxi distributsioonide initsiatiivid identsed System V OS -ga, välja arvatud mõned erandid, näiteks Slackware, mis kasutab BSD-stiili, ja Gentoo, kasutades kohandatud init .

Vajadus asendada init millegi täiuslikumaga oli tunda pikka aega ja aeg-ajalt töötati välja mitu alternatiivi, millest mõned muutusid levitamise kohalikuks init asendajaks, millest mõned on:

  1. Upstart - Ubuntu GNU/Linuxis rakendatud init-i asendusdemon, mis on loodud asünkroonse protsessi alustamiseks.
  2. ajastu - lihtsuse ja teenuse haldamise ümber ehitatud init-i asendusdemon, mis on mõeldud üheahelalise protsessi käivitamiseks.
  3. Mudar - Pythonis kirjutatud init-i asendusdemon, mis on rakendatud Pardus GNU/Linux-is ja mõeldud asünkroonselt protsessi alustamiseks.
  4. systemd - paralleelselt protsessi alustamiseks loodud init-i asendusdemon, mis on rakendatud paljudes standardsetes jaotustes - Fedora, OpenSuSE, Arch, RHEL, CentOS jne.

systemd on süsteemihalduse deemon, mille nimi on UNIX-i konventsiooniga, et lisada deemoni lõppu ‘ d ’. Nii et neid oleks hõlpsasti võimalik ära tunda. Esialgu anti see välja GNU üldise avaliku litsentsi alusel, kuid nüüd tehakse need GNU vähemal üldise avaliku litsentsi alusel. Sarnaselt init'iga on systemd kõigi teiste protsesside vanem otseselt või kaudselt ning see on esimene protsess, mis algab käivitamisel, seega määratakse tavaliselt " pid = 1 ".

Süsteem võib viidata kõigile deemoni ümbruses olevatele pakettidele, utiliitidele ja teekidele. See oli loodud init puuduste ületamiseks. See on ise taustaprotsess, mis on loodud protsesside paralleelseks käivitamiseks, vähendades seeläbi alglaadimise aega ja arvutuslikke üldkulusid. Sellel on võrreldes initiga palju muid funktsioone.

Init-protsess algab järjestikku, st üks ülesanne algab alles pärast seda, kui viimane ülesande käivitamine oli edukas ja see laaditi mällu. See põhjustas sageli hilinenud ja pikka alglaadimist. Systemd ei olnud aga mõeldud kiiruse, vaid asjade ilusa sooritamise jaoks, mis omakorda väldib ÜRO vajalikke viivitusi.

  1. Puhas, edukas ja tõhus disain.
  2. Lihtsam alglaadimine.
  3. Samaaegne ja paralleelne töötlemine alglaadimisel.
  4. Parem API.
  5. Lihtne ühikute süntaks.
  6. Võimalus eemaldada valikulisi komponente.
  7. Mälu on vähe jalajälgi.
  8. Täiustatud tehnika sõltuvuste väljendamiseks.
  9. Initsialiseerimise juhis on kirjutatud konfiguratsioonifailis, mitte shelliskriptis.
  10. Kasutage Unixi domeenipesa.
  11. Töö planeerimine, kasutades systemd kalendri taimereid.
  12. Sündmuste logimine ajakirjaga.
  13. Süsteemi sündmuste logimise valik koos systemd ja syslogiga.
  14. Logid salvestatakse binaarfaili.
  15. systemd-olekut saab säilitada, et seda hiljem tulevikus kutsuda.
  16. Protsessi jälgimiseks kasutage tuuma gruppi, mitte PID-d.
  17. Kasutajate sisselogimist haldab systemd-logind.
  18. Parem integreerimine Gnome'iga koostalitlusvõime jaoks.

  1. kõik ühes kohas.
  2. Pole POSIX-standard.

Linuxi kerneli peaarhitekt Linus Torvalds leiab, et systemd võtmearendaja suhtumine kasutajatesse ja veateated ei tundu ok. Samuti teatati, et süsteemipõhine filosoofia on imelik ja võõras viis süsteemiprotsesside juhtimiseks. Sama on salvestatud nii Patric Volkerdingilt ja teistelt märkimisväärsetelt Linuxi kasutajatelt ja arendajatelt kui ka veebifoorumilt aeg-ajalt.

Kõik, mis töötab kui pid = 1, ei tohi puruneda, ei tohi olla segaduses ning kasutaja peab seda tõhusalt ja tõhusalt kontrollima. Paljud kasutajad usuvad, et init asendamine systemd jaoks pole midagi muud kui ratta leiutamine Linuxi kõrvalmõjuna alati. Kuid see on Linuxi mitmekesine olemus. Seda seetõttu, et Linux on nii palju võimas. Muutused on head ja peame neid hindama, kui see on mõjuval põhjusel.

Praeguseks kõik. Olen siin taas ühe huvitava artikliga, mida teile meeldivad lugeda. Siiani olge Tecmintiga kursis ja ühenduses. Ärge unustage anda meile oma väärtuslikku tagasisidet allpool toodud kommentaarides.