Systemd
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
Systemd on Linux'i süsteemi ja teenuste haldur.
Kirjutatud C keeles, võimaldamaks suuremat töökiirust võrreldes eellastega kuid sellest hoolimata 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
systemctl'i manuaal 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!
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!
- Operatsionisüsteemi taaskäivitamine
systemctl reboot
- Operatsioonisüsteemi seiskamine
systemctl poweroff
systemd'd vaikimisi kasutavad distributsioonid
- Arch Linux (oktoober 2012)[4]
- Fedora (mai 2011) [5]
- Frugalware Linux (august 2011) [6]
- Mageia (mai 2012) [7]
- openSUSE (september 2012) [8]
- Sabayon Linux (august 2013) [9]
- siduction (detsember 2013) [10]
Kasulikke materjale
- http://freedesktop.org/wiki/Software/systemd systemd koduleht
- http://www.freedesktop.org/wiki/Software/systemd/TipsAndTricks/ Mõned näited keerukamatest protseduuridest
- https://wiki.archlinux.org/index.php/systemd systemd vägagi põhjalik ülevaade Arch Linux'i wikis
- 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
Töö esitamise tähtajaks valminud versioon
Autor
Peeter Tomusk AK41