Systemd: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Ptomusk (talk | contribs)
Mernits (talk | contribs)
 
(16 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 21: Line 24:
==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 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.
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ärgnevalt 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 haldamine on võimalik vaid juurkasutaja õigustes!
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
Line 54: Line 58:


===Süsteemi haldamine===
===Süsteemi haldamine===
'''Süsteemi haldamiseks tavakasutaja õigustes 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 61: 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 68: 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==
Line 75: Line 81:
* http://0pointer.de/blog/projects/systemd.html systemd kirjeldus selle autori (Lennart Poettering'i) poolt
* http://0pointer.de/blog/projects/systemd.html systemd kirjeldus selle autori (Lennart Poettering'i) poolt
* https://www.youtube.com/watch?v=TyMLi8QF6sw FOSDEM'i konverentsi raames Lennart Poettering'i poolt systemd'd tutvustava esitluse video
* 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==
==Töö esitamise tähtajaks valminud versioon==

Latest revision as of 23:17, 13 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