systemd

Wikipediasta
Siirry navigaatioon Siirry hakuun
systemd
Luoja Lennart Poettering, Kay Sievers
Kehityshistoria
Vakaa versio 255 ()[1]
Tiedot
Ohjelmistotyyppi init
Alusta Linux
Lisenssi GNU Lesser General Public License, versio 2.1 tai myöhempi
Aiheesta muualla
Verkkosivusto
Versiohallinta

systemd on Linux-käyttöjärjestelmässä käytetty init-ohjelman korvaaja, joka käynnistää tärkeimmät ohjelmat sekä hoitaa järjestelmän lokitietojen keruun, cron-tyyppisen tehtävien ajoituksen sekä useita muita tehtäviä. Se hoitaa esimerkiksi virranhallinnan, laitteistohallinnan, liittää levyosiot, huolehtii levyjen salauksesta, verkkoyhteyksien hallinnasta, järjestelmään kirjautumisesta, järjestelmän nimen, kellonajan ja maa-asetusten hallinnasta.[2] systemd:n ovat kehittäneet Red Hatillä Lennart Poettering ja Kay Sievers.[2]

Ohjelmaa on kritisoitu ja boikotoitu useita kertoja. Kriitikkojen mielestä systemd "laittaa kaikki munat samaan koriin". Ohjelman kaatuminen tietää suurella todennäköisyydellä koko järjestelmän kaatumista ja sen päivittämiseksi koko järjestelmä täytyy käynnistää uudelleen. systemd:n lokitiedostot on tallennettu sen omassa binäärimuodossa, eikä niitä voi lukea tavanomaisilla tekstitiedostoja käsittelevillä ohjelmilla.[2] Linus Torvalds ei vastusta systemd:n käyttöä, mutta on kertonut eräiden kehittäjien olevan liian välinpitämättömiä bugeista.[2][3] Ohjelman mukana ollut udev-ohjelmisto on poistettu systemd-projektista koska firmwaren lataaminen on ytimen vastuulla.[4] Theodore Ts’o on kritisoinut tapaa, jolla järjestelmään vaikuttavia muutoksia tehdään välittämättä tietyn käyttökohteen ulkopuolisista.[2]

Aiemmin Linux-alustalla käytettiin System V:n tyylistä SysVInit:iä ja BSD:n initiä, joiden jälkeen tulivat service ja chkconfig -ohjelmat.[5] Myöhemmin tuli Upstart, jonka systemd on korvannut useissa paikoissa.[5] Red Hat halusi pitää Canonicalin ylläpitämän Upstartin, mutta Debian-projektin siirryttyä käyttämään systemd:tä kiinnostus Upstartiin päättyi.[6] systemd:n käyttö tuli pakolliseksi GNOME:n version 3.8 myötä.[2]

Ohjelma on ensimmäinen prosessi, jonka Linux-ydin käynnistää tietokoneen käynnistyessä.[7] Eräitä kehityskohteita aiempiin ratkaisuihin olivat käynnistymisnopeuden parantaminen sekä laitteiston ja ohjelmiston muutoksien käsittely käynnissä olevassa järjestelmässä.[8] systemd korvaa perinteiset Unix-tyyliset suoritustasot (runlevel) omalla ratkaisullaan, mutta tarjoaa yhteensopivuuden.[9]

systemd:n käynnistämiä palveluita muokataan systemctl-ohjelmalla.[10] systemd:n hallinta tapahtuu D-Bus-väylän läpi. systemd myös julkaisee kaikkien palvelujensa tilan väylällä.[11] systemd:n lokeja puolestaan tarkastellaan journalctl-komennolla.

Lähteet[muokkaa | muokkaa wikitekstiä]

  1. [systemd-devel] systemd 255 released, (viitattu ). Tieto on haettu Wikidatasta.
  2. a b c d e f Steven J. Vaughan-Nichols: Linus Torvalds and others on Linux's systemd 19.9.2014. ZDnet. Viitattu 16.6.2019. (englanniksi)
  3. Linus Torvalds: Re: udev breakages - was: Re: Need of an ".async_probe()" type of callback at driver's core - Was: Re: [PATCH [media] drxk: change it to use request_firmware_nowait()] 3.10.2012. Lkml.org. Viitattu 16.6.2019. (englanniksi)
  4. Cristian Rodríguez: [systemd-devel [PATCH] Drop the udev firmware loader] lists.freedesktop.org. 29.5.2014. Viitattu 16.6.2019. (englanniksi)
  5. a b Carla Schroder: Understanding and Using Systemd 18.9.2014. Linux.com. Viitattu 16.6.2019. (englanniksi)
  6. Lennart Poettering on systemd’s Tumultuous Ascendancy thenewstack.io. 26.1.2017. Viitattu 7.3.2020. (englanniksi)
  7. systemd man7.org. Viitattu 16.6.2019. (englanniksi)
  8. Jonathan Corbet: Systemd as tragedy 28.1.2019. Lwn.net. Viitattu 16.6.2019. (englanniksi)
  9. runlevel(8) man7.org. Viitattu 4.4.2021. (englanniksi)
  10. Carla Schroeder: Cleaning Up Your Linux Startup Process 18.5.2016. Linux.com. Viitattu 16.6.2019. (englanniksi)
  11. Daemon Management Under Systemd, ;login:, June 2015. Vol. 40, No.3 [1]

Aiheesta muualla[muokkaa | muokkaa wikitekstiä]