Tarina initin ja systemd: n takia: Miksi init on korvattava systemd: llä Linuxissa


Olen tilannut useita postituslistoja, jotka liittyvät erilaisiin Linux-jakeluihin ja -sovelluksiin, vain pitääkseen itseni ajan tasalla siitä, mitä missä tapahtuu. Mitä uusia vikoja on? Mitä julkaistut korjaustiedostot ovat? Mitä odotetaan seuraavassa julkaisussa? ja paljon muuta tavaraa. Nykyään postitusluettelossa on runsaasti ”Valitse puolesi Linux Divide” -sovellusta, lähinnä Debianin postituslistalla yhdessä muutamien muiden kanssa.

init -demoni korvataan daemon systemd -ominaisuudella joissakin Linux-jakeluissa, vaikka monet niistä ovat jo toteuttaneet sen. Tämä on/tulee luomaan valtavan kuilun perinteisen Unix/Linux Guardin ja New Linux Guard - ohjelmoijien ja järjestelmänvalvojien välille.

Tässä artikkelissa keskustellaan ja ratkaistaan kaikkien kyselyjen seuraaminen yksitellen.

  1. Mikä init on?
  2. Mikä on systemd?
  3. Miksi init oli vaihdettava?
  4. Mitä ominaisuuksia systemd omistaa.

Linuxissa init on lyhenne alustusasetuksesta. init on daemon-prosessi, joka käynnistyy heti, kun tietokone käynnistyy ja jatkuu, kunnes se sammutetaan. Itse asiassa init on ensimmäinen prosessi, joka alkaa, kun tietokone käynnistyy, joten se on kaikkien muiden käynnissä olevien prosessien vanhempi suoraan tai epäsuorasti, ja siksi sille tyypillisesti määritetään "pid = 1 ".

Jos jotenkin init -demonia ei voitu käynnistää, mitään prosessia ei aloiteta ja järjestelmä saavuttaa vaiheen nimeltä Kernel Panic . initia kutsutaan yleisimmin nimellä System V init . System V on ensimmäinen kaupallinen UNIX-käyttöjärjestelmä, joka on suunniteltu, ja init-käyttö useimmissa tämän päivän Linux-jakeluissa on identtinen System V -käyttöjärjestelmän kanssa muutamia poikkeuksia lukuun ottamatta, kuten Slackware, joka käyttää BSD-tyyliä, ja Gentoo, joka käyttää mukautettua initia .

Tarve korvata init jollakin täydellisemmällä tuntui pitkään, ja ajoittain kehitettiin useita vaihtoehtoja, joista osa tuli jakelun alkuperäiseksi init-korvaavaksi, joista osa on:

  1. Upstart - Ubuntu GNU/Linuxissa käyttöönotettu init-korvausdemon, joka on suunniteltu aloittamaan prosessi asynkronisesti.
  2. Epoch - yksinkertaisuuden ja palvelunhallinnan ympärille rakennettu init-korvausdemon, joka on suunniteltu aloittamaan yksisäikeinen prosessi.
  3. Mudar - Pythonissa kirjoitettu init-korvausdemon, toteutettu Pardus GNU/Linux -käyttöjärjestelmälle ja suunniteltu aloittamaan prosessi asynkronisesti.
  4. systemd - init-korvausdemon, joka on suunniteltu käynnistämään prosessi rinnakkain ja joka on toteutettu useissa standardijakelussa - Fedora, OpenSuSE, Arch, RHEL, CentOS jne.

systemd on UNIX-sopimuksella nimetty järjestelmänhallinnan demoni, jolla lisätään d daemonin loppuun. Joten, että ne voidaan helposti tunnistaa. Alun perin se julkaistiin GNU General Public License -lisenssillä, mutta nyt julkaisut tehdään GNU Lesser General Public License -lisenssillä. Samoin kuin init, systemd on kaikkien muiden prosessien vanhempi suoraan tai epäsuorasti, ja se on ensimmäinen käynnistysvaiheessa oleva prosessi, jolle tyypillisesti määritetään " pid = 1 ".

Systemd saattaa viitata kaikkiin daemonin ympärillä oleviin paketteihin, apuohjelmiin ja kirjastoihin. Se on suunniteltu voittamaan initin puutteet. Itse se on taustaprosessi, joka on suunniteltu käynnistämään prosessit rinnakkain, mikä vähentää käynnistysaikaa ja laskennallista yleiskustannusta. Sillä on paljon muita ominaisuuksia initiin verrattuna.

Aloitusprosessi alkaa sarjaan eli yksi tehtävä alkaa vasta sen jälkeen, kun viimeinen tehtävän käynnistys onnistui ja se ladattiin muistiin. Tämä johti usein viivästyneeseen ja pitkään käynnistykseen. Systemd ei kuitenkaan ollut suunniteltu nopeutta varten, vaan asioiden hoitamiseksi siististi, mikä puolestaan välttää kaikki YK: n tarpeelliset viivästykset.

  1. Puhdas, tilaa vievä ja tehokas muotoilu.
  2. Yksinkertaisempi käynnistysprosessi.
  3. Samanaikainen ja rinnakkainen käsittely käynnistyksen yhteydessä.
  4. Parempi sovellusliittymä.
  5. Yksinkertainen yksikön syntaksi.
  6. Mahdollisuus poistaa valinnaisia komponentteja.
  7. Muistin vähäiset jalanjäljet.
  8. Parannettu tekniikka riippuvuuksien ilmaisemiseksi.
  9. Alustusohje, joka on kirjoitettu määritystiedostoon eikä shell-komentosarjaan.
  10. Käytä Unix Domain Socketia.
  11. Työn ajoitus systemd-kalenteriajastimilla.
  12. Tapahtumien kirjaaminen journalin avulla.
  13. Valinta kirjata järjestelmätapahtumat sekä systemd: n että syslogin avulla.
  14. Lokit tallennetaan binaaritiedostoon.
  15. systemd-tila voidaan säilyttää kutsumiseksi myöhemmin tulevaisuudessa.
  16. Seuraa prosessia käyttämällä ytimen cgroupia eikä PID: tä.
  17. Käyttäjien sisäänkirjautumista hallinnoi systemd-logind.
  18. Parempi integrointi Gnomen kanssa yhteentoimivuuden varmistamiseksi.

  1. Kaikki yhdessä paikassa.
  2. Ei POSIX-standardia.

Linux-ytimen pääarkkitehti Linus Torvalds kokee, että systemd: n keskeisen kehittäjän asenne käyttäjiin ja virheraportit eivät vaikuta kunnolta. Kerrottiin myös, että systemd-filosofia on outo ja vieras tapa hallita järjestelmäprosesseja. Sama on nauhoitettu Patric Volkerdingiltä ja muilta merkittäviltä Linux-käyttäjiltä ja -kehittäjiltä sekä online-foorumilta, aika ajoin.

Mikään, joka toimii muodossa pid = 1, ei saa rikkoutua, ei saa olla sotkuista, ja käyttäjien on ohjattava niitä tehokkaasti. Monet käyttäjät uskovat, että init: n korvaaminen systemd: lle ei ole muuta kuin pyörän keksiminen joka kerta Linuxin sivuvaikutuksena. Mutta tämä on Linuxin monimuotoisuus. Tämä johtuu siitä, että Linux on niin paljon tehokas. Muutos on hyvä, ja meidän on arvostettava sitä, jos se on hyvästä syystä.

Tässä kaikki tältä erää. Olen täällä taas toisen mielenkiintoisen artikkelin kanssa, jota rakastat lukea. Till sitten pysy kuulolla ja yhteydessä Tecmintiin. Älä unohda antaa meille arvokasta palautettasi alla olevissa kommenteissa.