Difference between revisions of "Systemd"

From ICO wiki
m (Tehniline kirjeldus)
(Kasulikke materjale)
 
(27 intermediate revisions by one other user not shown)
Line 1: Line 1:
 +
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]
 
==Sissejuhatus==
 
==Sissejuhatus==
 
===Eeldused lugejale===
 
===Eeldused lugejale===
* Saab iseseivalt hakkama Linux'i käsureaga
+
* Saab iseseivalt hakkama Linux'i käsureaga [https://wiki.itcollege.ee/index.php/Osadmin_spikker]
* On kursis erinevate teenuste olemasoluga ja nende haldamise vajadusega
+
* On kursis erinevate teenuste olemasoluga ja nende haldamise vajadusega [https://wiki.itcollege.ee/index.php/Category:IT_infrastruktuuri_teenused]
* Suudab enda privileege iseseisvalt eskaleerida juurkasutajaks
+
* Suudab enda privileege iseseisvalt eskaleerida juurkasutajaks [https://wiki.itcollege.ee/index.php/Sudo_ja_sudoers ]
 +
 
 
===systemd üldine kirjeldus===
 
===systemd üldine kirjeldus===
 +
''Järgnev alampeatükk on refereeritud systemd [http://freedesktop.org/wiki/Software/systemd/ kodulehelt].''<br/>
 
Systemd on Linux'i süsteemi ja teenuste haldur.<br/>
 
Systemd on Linux'i süsteemi ja teenuste haldur.<br/>
Kirjutatud C keeles, võimaldamaks suuremat töökiirust võrreldes eellastega kuid sellest hoolimata tagasiühilduv [[SystemV]] ja [[LSB]] käivitusskriptidega.
+
Kirjutatud C keeles, võimaldamaks suuremat töökiirust võrreldes eellastega, kuid sellest hoolimata on tagasiühilduv [[SystemV]] ja [[LSB]] käivitusskriptidega.
 
;Põhilised disainielemendid
 
;Põhilised disainielemendid
 
* Agressiivne teenuste käivitamise paralleliseerimine
 
* Agressiivne teenuste käivitamise paralleliseerimine
Line 14: Line 17:
 
* Kettajagude külgehaakimise vajadusepõhine haldamine
 
* Kettajagude külgehaakimise vajadusepõhine haldamine
 
;Nimi ja selle kasutamine
 
;Nimi ja selle kasutamine
Systemd kirjutatakse alati läbivalt väikeste tähtedega kuid erandkorras on lubatud lause alguses kasutada suurt algustähte.<br/>
+
Systemd kirjutatakse alati läbivalt väikeste tähtedega, kuid erandkorras on lubatud lause alguses kasutada suurt algustähte.<br/>
 
Rooma number D ehk 500 ja V ehk 5 võimaldavad ka hoomata systemd ja [[SystemV]] järglaslikku seost.
 
Rooma number D ehk 500 ja V ehk 5 võimaldavad ka hoomata systemd ja [[SystemV]] järglaslikku seost.
 
;Loojad
 
;Loojad
Lennart Poettering ja Kay Sievers
+
[http://en.wikipedia.org/wiki/Lennart_Poettering Lennart Poettering] ja [http://en.wikipedia.org/wiki/Kay_Sievers Kay Sievers]
  
 
==systemd==
 
==systemd==
 
===Tehniline kirjeldus===
 
===Tehniline kirjeldus===
Systemd käivitab võimalikult palju teenuseid paralleelselt. Võimaldamaks süsteemi kiiremat käivitumist ei oodata iga teenuse tööks vajalike teiste teenuste startimist vaid pakutakse neile sokleid, mille abil nad omavahel suhtlevad ning kõnealune osa süsteemi käivitumisest viiakse parallelselt jadamisi loogikale üle alles reaalse vajaduse tekkimisel. Niimoodi on võimalik käivitada näiteks Samba server oluliselt varem kui väljajagatav kettajagu on kettakontrolli läbinud, mis võimaldab näiteks kasutada Sambat kasutajate autentimiseks oluliselt varem kui seda võimaldataks [[SystemV]] puhul. Lisaväärtusena puhverdab systemd teenuste omavahelist suhtlust ning ka juhul kui kasutaja tõesti soovib näitena toodud kettajagu kasutada esineb süsteemis vea asemel vaid mõningane viivitus. Soklite ja reaalsete teenuste vahelise suhtluse haldamine võimaldab ka vahepeal vea tõttu seiskunud teenuseid vajadusel taas käivitada kui nende järele peaks mõnel teisel teenusel vajadus tekkima.
+
Systemd käivitab võimalikult palju teenuseid paralleelselt. Võimaldamaks süsteemi kiiremat käivitumist ei oodata iga teenuse tööks vajalike teiste teenuste startimist, vaid pakutakse neile sokleid, mille abil nad omavahel suhtlevad, ning kõnealune osa süsteemi käivitumisest viiakse parallelselt jadamisi loogikale üle alles reaalse vajaduse tekkimisel. Niimoodi on võimalik käivitada näiteks Samba server oluliselt varem kui väljajagatav kettajagu on kettakontrolli läbinud, mis võimaldab näiteks kasutada Sambat kasutajate autentimiseks oluliselt varem kui seda võimaldataks [[SystemV]] puhul. Lisaväärtusena võimaldab soklite kasutamine teenuste omavahelist suhtlust puhverdada ning ka juhul kui kasutaja tõesti soovib näitena toodud kettajagu kasutada esineb süsteemis vea asemel vaid mõningane viivitus. Soklite ja reaalsete teenuste vahelise suhtluse haldamine võimaldab ka vahepeal vea tõttu seiskunud teenuseid vajadusel taaskäivitada kui nende järele peaks mõnel teisel teenusel vajadus tekkima.
  
 
===Teenuste haldamine===
 
===Teenuste haldamine===
Järnevalt eeldame et teie poolt hallatava teenuse nimi on määratud muutuja '''_teenus''' väärtuseks.
+
Järgnevalt eeldame et teie poolt hallatava teenuse nimi on määratud muutuja '''_teenus''' väärtuseks.
Samuti on oluline meeles pidada et enamike teenuste haldamiseks on vajalik omada juurkasutaja õiguseid!
+
Samuti on oluline meeles pidada et enamike teenuste haldamine on võimalik vaid juurkasutaja õigustes!<br/>
 +
''Refereerituna systemctl'i [http://www.freedesktop.org/software/systemd/man/systemctl.html manuaal]ist''
 
====Teenuste loetelu ja kirjeldus====
 
====Teenuste loetelu ja kirjeldus====
 
;Olemasolevate teenuste nimekiri
 
;Olemasolevate teenuste nimekiri
 
  systemctl --list-units
 
  systemctl --list-units
;Süsteemi käivitumise ebaõnnestunud teenused
+
;Süsteemi käivitumisel ebaõnnestunud teenused
 
  systemctl --failed
 
  systemctl --failed
 +
 
====Käivitamine/Peatamine====
 
====Käivitamine/Peatamine====
 
;Teenuse käivitamine
 
;Teenuse käivitamine
Line 40: Line 45:
 
;Teenuse seadistuse taaslaadimine
 
;Teenuse seadistuse taaslaadimine
 
  systemctl reload $_teenus
 
  systemctl reload $_teenus
;Teenuse staatuse ülevaade
+
;Teenuse oleku ülevaade
 
  systemctl status $_teenus
 
  systemctl status $_teenus
  
Line 51: Line 56:
 
;Teenuse määramine vaikimisi mitte-käivitatavaks
 
;Teenuse määramine vaikimisi mitte-käivitatavaks
 
  systemctl disable $_teenus
 
  systemctl disable $_teenus
 +
 
===Süsteemi haldamine===
 
===Süsteemi haldamine===
'''Süsteemi haldamiseks on vajalik [[polkit]]!'''
+
'''Süsteemi haldamiseks tavakasutaja õigustes on vajalik [[polkit]]!'''[http://www.freedesktop.org/wiki/Software/polkit/]
 
;Operatsionisüsteemi taaskäivitamine
 
;Operatsionisüsteemi taaskäivitamine
 
  systemctl reboot
 
  systemctl reboot
Line 59: Line 65:
  
 
==systemd'd vaikimisi kasutavad distributsioonid==
 
==systemd'd vaikimisi kasutavad distributsioonid==
* Arch Linux (oktoober 2012)[https://www.archlinux.org/news/systemd-is-now-the-default-on-new-installations/]
+
* Arch Linux (oktoober 2012) [https://www.archlinux.org/news/systemd-is-now-the-default-on-new-installations/]
 
* Fedora (mai 2011) [http://h-online.com/-1249820]
 
* Fedora (mai 2011) [http://h-online.com/-1249820]
 
* Frugalware Linux (august 2011) [http://frugalware.org/news/223]
 
* Frugalware Linux (august 2011) [http://frugalware.org/news/223]
Line 66: Line 72:
 
* Sabayon Linux (august 2013) [http://www.sabayon.org/release/press-release-sabayon-1308]
 
* Sabayon Linux (august 2013) [http://www.sabayon.org/release/press-release-sabayon-1308]
 
* siduction (detsember 2013) [http://news.siduction.org/2013/12/siduction-2013-2-rc1-released-with-systemd/]
 
* siduction (detsember 2013) [http://news.siduction.org/2013/12/siduction-2013-2-rc1-released-with-systemd/]
 +
==Kokkuvõte==
 +
Systemd pakutavad võimalused ning eelised teiste süsteemihalduritega võrreldes on väga arvukad ning käesolevat artiklit tuleks pigem võtta lühitutvustusena mitte ülevaatena. Autori senine isiklik kogemus on ülimalt positiivne ning ta on veendunud et systemd on parim valik hetkel eksisteerivatest valikutest.
  
 
==Kasulikke materjale==
 
==Kasulikke materjale==
* http://freedesktop.org/wiki/Software/systemd
+
* http://freedesktop.org/wiki/Software/systemd systemd koduleht
* http://www.freedesktop.org/wiki/Software/systemd/TipsAndTricks/
+
* http://www.freedesktop.org/wiki/Software/systemd/TipsAndTricks/ Mõned näited keerukamatest protseduuridest
* https://wiki.archlinux.org/index.php/systemd
+
* https://wiki.archlinux.org/index.php/systemd systemd vägagi põhjalik ülevaade Arch Linux'i wikis
* http://0pointer.de/blog/projects/systemd.html
+
* http://0pointer.de/blog/projects/systemd.html systemd kirjeldus selle autori (Lennart Poettering'i) poolt
* https://www.youtube.com/watch?v=TyMLi8QF6sw
+
* https://www.youtube.com/watch?v=TyMLi8QF6sw FOSDEM'i konverentsi raames Lennart Poettering'i poolt systemd'd tutvustava esitluse video
 +
* http://www.linux.com/learn/tutorials/794615-systemd-runlevels-and-service-management systemd abil teenuste haldamine
 +
 
 +
==Töö esitamise tähtajaks valminud versioon==
 +
[https://wiki.itcollege.ee/index.php?title=Systemd&diff=cur&oldid=72823 Diff praeguse versiooniga]
 +
==Autor==
 +
Peeter Tomusk AK41

Latest revision as of 00:17, 14 November 2014

Sissejuhatus

Eeldused lugejale

  • Saab iseseivalt hakkama Linux'i käsureaga [1]
  • On kursis erinevate teenuste olemasoluga ja nende haldamise vajadusega [2]
  • Suudab enda privileege iseseisvalt eskaleerida juurkasutajaks [3]

systemd üldine kirjeldus

Järgnev alampeatükk on refereeritud systemd kodulehelt.
Systemd on Linux'i süsteemi ja teenuste haldur.
Kirjutatud C keeles, võimaldamaks suuremat töökiirust võrreldes eellastega, kuid sellest hoolimata on tagasiühilduv SystemV ja LSB käivitusskriptidega.

Põhilised disainielemendid
  • Agressiivne teenuste käivitamise paralleliseerimine
  • Sõltuvustepõhine teenuste käivitamine
  • Sokkelite ja D-Bus'il põhinevalt vajadusepõhine teenuste käivitamine
  • Protsesside haldamine cgroup'ide abil
  • Kettajagude külgehaakimise vajadusepõhine haldamine
Nimi ja selle kasutamine

Systemd kirjutatakse alati läbivalt väikeste tähtedega, kuid erandkorras on lubatud lause alguses kasutada suurt algustähte.
Rooma number D ehk 500 ja V ehk 5 võimaldavad ka hoomata systemd ja SystemV järglaslikku seost.

Loojad

Lennart Poettering ja Kay Sievers

systemd

Tehniline kirjeldus

Systemd käivitab võimalikult palju teenuseid paralleelselt. Võimaldamaks süsteemi kiiremat käivitumist ei oodata iga teenuse tööks vajalike teiste teenuste startimist, vaid pakutakse neile sokleid, mille abil nad omavahel suhtlevad, ning kõnealune osa süsteemi käivitumisest viiakse parallelselt jadamisi loogikale üle alles reaalse vajaduse tekkimisel. Niimoodi on võimalik käivitada näiteks Samba server oluliselt varem kui väljajagatav kettajagu on kettakontrolli läbinud, mis võimaldab näiteks kasutada Sambat kasutajate autentimiseks oluliselt varem kui seda võimaldataks SystemV puhul. Lisaväärtusena võimaldab soklite kasutamine teenuste omavahelist suhtlust puhverdada ning ka juhul kui kasutaja tõesti soovib näitena toodud kettajagu kasutada esineb süsteemis vea asemel vaid mõningane viivitus. Soklite ja reaalsete teenuste vahelise suhtluse haldamine võimaldab ka vahepeal vea tõttu seiskunud teenuseid vajadusel taaskäivitada kui nende järele peaks mõnel teisel teenusel vajadus tekkima.

Teenuste haldamine

Järgnevalt eeldame et teie poolt hallatava teenuse nimi on määratud muutuja _teenus väärtuseks. Samuti on oluline meeles pidada et enamike teenuste haldamine on võimalik vaid juurkasutaja õigustes!
Refereerituna systemctl'i manuaalist

Teenuste loetelu ja kirjeldus

Olemasolevate teenuste nimekiri
systemctl --list-units
Süsteemi käivitumisel ebaõnnestunud teenused
systemctl --failed

Käivitamine/Peatamine

Teenuse käivitamine
systemctl start $_teenus
Teenuse peatamine
systemctl stop $_teenus
Teenuse taaskäivitamine
systemctl restart $_teenus
Teenuse seadistuse taaslaadimine
systemctl reload $_teenus
Teenuse oleku ülevaade
systemctl status $_teenus

Restartimisel käivitatavad teenused

Teenuse määramine restardi käigus käivitavaks või mitte-käivitatavaks ei oma teenuse praeguse oleku suhtes tagajärgi!

Kontroll kas teenus käivitatakse automaatselt
systemctl is-enabled $_teenus
Teenuse määramine vaikimisi käivitatavaks
systemctl enable $_teenus
Teenuse määramine vaikimisi mitte-käivitatavaks
systemctl disable $_teenus

Süsteemi haldamine

Süsteemi haldamiseks tavakasutaja õigustes on vajalik polkit![4]

Operatsionisüsteemi taaskäivitamine
systemctl reboot
Operatsioonisüsteemi seiskamine
systemctl poweroff

systemd'd vaikimisi kasutavad distributsioonid

  • Arch Linux (oktoober 2012) [5]
  • Fedora (mai 2011) [6]
  • Frugalware Linux (august 2011) [7]
  • Mageia (mai 2012) [8]
  • openSUSE (september 2012) [9]
  • Sabayon Linux (august 2013) [10]
  • siduction (detsember 2013) [11]

Kokkuvõte

Systemd pakutavad võimalused ning eelised teiste süsteemihalduritega võrreldes on väga arvukad ning käesolevat artiklit tuleks pigem võtta lühitutvustusena mitte ülevaatena. Autori senine isiklik kogemus on ülimalt positiivne ning ta on veendunud et systemd on parim valik hetkel eksisteerivatest valikutest.

Kasulikke materjale

Töö esitamise tähtajaks valminud versioon

Diff praeguse versiooniga

Autor

Peeter Tomusk AK41