Systemd-palvelutiedosto

Systemd Palvelutiedosto



Linuxissa systemctl-tilatulostus osoittaa, että palvelu ladataan tiedoston kautta, jota kutsutaan palvelutiedostoksi. Näitä tiedostoja voi käyttää osoitteessa /lib/systemd/system tai /etc/systemd/system hakemistoja.

Palvelutiedostot ovat .palvelu laajennuksia ja sisältävät ohjeet, jotka vaaditaan systemd hoitaa palvelua.







The systemd init-järjestelmä hallitsee järjestelmän alustusta käyttämällä Yksikkö . Yksikkö on objekti, joka suorittaa tehtävän tai toiminnon, kuten palvelun hallinnan, johon kuuluu sen ohjaaminen ja valvonta. Nämä yksiköt ovat pohjimmiltaan palvelutiedostoiksi kutsuttuja tiedostoja, jotka sisältävät yksiköiden riippuvuuksia ja komentoja. Nämä tiedostot ovat ratkaisevan tärkeitä taustaprosessien tehokkaan hallinnan ja resurssien hallinnan kannalta.



Oppaassa tutkin systemd-palvelutiedostoa, sen rakennetta ja tärkeimpiä palvelua ohjaavia direktiivejä.



Kun työskentelet systemdin kanssa, ehdot systemd-palvelutiedosto ja systemd-yksikkötiedosto käytetään usein vaihtokelpoisina, koska teknisesti ne viittaavat samaan asiaan.





Mikä on Systemd Service File

Linuxissa systemd hallitsee palveluita käyttämällä palvelutiedostoja, jotka sisältävät konfigurointiohjeet, jotta systemd voi ymmärtää ja suorittaa.

Listaa yksiköt käyttämällä systemctl-komentoa -luetteloyksiköt komento.



systemctl --lista-yksiköt

Voit lukea minkä tahansa palvelun palvelutiedoston käyttämällä kissa komento tiedostopolun kanssa.

kissa [ / palvelu-tiedostopolku ]

Esimerkiksi nähdäksesi palvelutiedoston ssh.service käytä annettua komentoa.

kissa / lib / systemd / järjestelmä / ssh.service

Systemd-palvelutiedoston anatomia

Yleensä systemd-palveluyksikkötiedostot sisältävät kolme osaa.

  • Yksikkö
  • Palvelu
  • Asentaa

Palvelukohtaisessa yksikkötiedostossa on erityinen osio nimeltä Palvelu osio.

Huomaa, että palvelu on vain eräänlainen yksikkö. Yksiköllä voi olla erilaisia ​​tyyppejä, kuten pistorasia, laite, kiinnitys, automaattinen asennus, swap, kohde, ajastin, lohko ja laajuus. Nämä osat sijoitetaan yksikkö- ja asennusosien väliin. Myös tiedostopääte korvataan vastaavalla yksikkötyypillä, esimerkiksi socket-yksikkötyypillä on a .pistoke tiedostopääte.

Huomautus: Tässä oppaassa keskityn palveluyksikkötyyppiin, koska järjestelmänvalvojat ja kehittäjät käyttävät sitä laajasti.

Nämä osat on suljettu hakasulkeisiin ([]). Jokainen osa sisältää asiaankuuluvan ohjesarjan. Alla on esitetty palvelutiedoston yleinen rakenne.

[ Yksikkö ]

direktiivi1 =Ohje 1

direktiivi2 =Ohje 2

[ Palvelu ]

direktiivi1 =Ohje 1

direktiivi2 =Ohje 2

[ Asentaa ]

direktiivi1 =Ohje 1

direktiivi2 =Ohje 2

Osioiden järjestystä voidaan muuttaa; kuitenkin yleensä noudatetaan edellä mainittua järjestystä.

[Yksikkö] -osio

Yksikköosa sisältää yksikön kuvauksen ja yksikköriippuvuudet. Tämä osio sijoitetaan tavanomaisesti palvelutiedoston yläosaan. Yleisesti käytetyt direktiivit on lueteltu alla:

Direktiivi Kuvaus
Kuvaus Tätä ohjetta käytetään mainitsemaan palvelun nimi. Kuvauksen pituus saa olla enintään 80 merkkiä.
Dokumentointi Tämä ohje sisältää palvelun man-sivun tai URL-osoitteen.
Vaatii Tätä direktiiviä käytetään mainitsemaan riippuvuus nykyisestä palvelusta. Jos tätä riippuvuuspalvelua ei aktivoida, nykyistä palvelua ei käynnistetä.
Haluaa Tätä direktiiviä käytetään mainitsemaan riippuvuus nykyisestä palvelusta. Tätä riippuvuuspalvelua ei kuitenkaan tarvitse aktivoida nykyisen palvelun suorittamiseksi.
Ennen Kun nykyinen yksikkö on aktivoitu, tässä ohjeessa mainittu palvelu käynnistetään.
Jälkeen Ennen kuin nykyinen yksikkö on aktivoitu, tässä ohjeessa mainittu palvelu käynnistetään.
BindsTo Tämä ohje linkittää nykyisen palvelun mainittuun palveluun. Jos linkitetty palvelu käynnistyy uudelleen, myös nykyiset palvelut käynnistyvät uudelleen.

Näiden direktiivien lisäksi on olemassa kaksi muuta direktiiviä; Kunto ja Väitä. Monet palvelut vaativat tietyt järjestelmäehdot toimiakseen onnistuneesti, ja näitä direktiivejä käytetään ehtojen mainitsemiseen.

[Asenna] -osio

Tämä osio ei ole pakollinen, ja se on välttämätön vain, kun palvelu vaatii aktivoinnin tai deaktivoinnin käynnistyksen yhteydessä. Lisäksi on mainittava myös aliaspalvelu. Yleisesti käytetyt Asennus-osion käskyt on lueteltu alla:

Direktiivi Kuvaus
WantedBy Tämä direktiivi määrittää ajon tason * palvelun kohde. Jos tavoite on asetettu monen käyttäjän.kohde sitten palvelu otetaan käyttöön tällä suoritustasolla.
Edellyttämät Tämä direktiivi muistuttaa WantedByä, mutta palvelu otetaan käyttöön myös ilman direktiivissä mainittua riippuvuutta.
Alias Tätä ohjetta käytetään palvelun käyttöönottoon toisella nimellä. Tällä nimellä luodaan symbolilinkki, kun palvelu otetaan käyttöön.

Enimmäkseen, monen käyttäjän.kohde käytetään nimellä WantedBy parametri. Mutta mikä on multi-user.target?

Multi-user.target edustaa järjestelmän tilaa, joka on valmis hyväksymään ei-graafiset usean käyttäjän istunnot. Se on tila ennen GUI:n käynnistämistä.

Järjestelmässä on erilaisia ​​ajotasoja, tutustutaanpa näiden ajotasojen toimintaan.

Systemd:ssä palvelut ryhmitellään ajotasojen perusteella, joita kutsutaan tavoitteita . Jokaisella suoritustasolla on tiedosto .kohde laajennus /etc/systemd/system hakemistosta. Palvelu toimii ajotason tilan perusteella.

Run Level Tavoitteet Osavaltio Tiedostot
0 virta pois Sammuta ja sammuta virta poweroff.target
1 pelastaa Käynnistää pelastuskuoren pelastus.kohde
2,3,4 monen käyttäjän Käynnistää usean käyttäjän ei-GUI-kuoren monen käyttäjän.kohde
5 graafinen Perustaa usean käyttäjän GUI-kuoren graafinen.target
6 käynnistä uudelleen Sammuta ja käynnistä uudelleen reboot.target

[Palvelu] -osio

Tämä osio sisältää palvelun konfigurointiasetukset. Tämän osion ensisijainen kokoonpano on palvelun alussa suoritettavan tyypin ja kometojen määrittäminen. Tyyppi ja ExecStart ovat tärkeimmät palvelun perustamiseen käytetyt direktiivit.

Palvelutyypit on lueteltu seuraavassa taulukossa.

palvelutyyppi Kuvaus
yksinkertainen Se on oletustyyppi, kun tyyppiä tai väylänimeä ei mainita ja vain ExecStart mainitaan. Systemd suorittaa ensin pääprosessin ja sitten seurantayksiköt.
haarukka Tätä tyyppiä käytetään pitämään palvelu käynnissä, vaikka pääpalvelu olisi suljettu. Se muodostaa lapsiprosessin pääprosessin sulkemisen jälkeen.
yksi laukaus Systemd suorittaa pääprosessin ensin ja kun pääprosessi poistuu, seurantayksiköt käynnistyvät.
dbus Dbus-palvelua käytetään kommunikoimaan toisen väylän prosessin kanssa. Jos väylän nimi mainitaan, prosessi aktivoituu, kun väylän nimi on hankittu.
ilmoittaa Palvelu ilmoittaa prosessin aloittamisesta. Systemd jatkaa seurantayksiköihin ilmoituksen antamisen jälkeen.
tyhjäkäynnillä Se säilyttää palvelun, kunnes kaikki aktiiviset työt on lähetetty; ensisijaisesti hyödyllinen parantamaan konsolin lähtöä.

Palvelu-osiossa yleisesti käytetyt käskyt on mainittu alla:

Direktiivi Kuvaus
ExecStart Se säilyttää suoritettavan komennon täyden polun prosessin aloittamiseksi.
ExecStartPre Se säilyttää komennot, jotka tulee suorittaa ennen pääprosessin alkamista.
ExecStartPost Se säilyttää komennot, jotka tulee suorittaa pääprosessin alkamisen jälkeen.
ExecReload Se säilyttää komennon ladata palvelun kokoonpano uudelleen.
Uudelleenkäynnistää Palvelun automaattinen käynnistäminen uudelleen sellaisissa olosuhteissa kuin epäonnistuminen, onnistuminen, epänormaali, keskeytys ja vahtikoira.
RestartSec Säilytä sekuntien lukumäärä, jonka jälkeen palvelu käynnistyy automaattisesti uudelleen.

The ExecStart on yksi palveluosiossa käytetyistä keskeisistä ohjeista. Se sisältää suoritettavan tiedoston koko polku että palvelu suoritetaan kutsuttaessa.

Johtopäätös

Systemd-palvelutiedosto on konfiguraatiotiedosto, joka on rakennettu käskyillä ja komennoilla, jotta systemd voi hallita niitä. Nämä tiedostot sisältävät ohjeita, jotka osoittavat, kuinka systemd hallitsee palvelua. Tässä oppaassa kerroin, kuinka pääset käsiksi systemd-palvelutiedostoon, sen osioihin ja palveluita hallitseviin ohjeisiin. Saat lisätietoja palvelutiedostojen ohjeista lukemalla löytyneen virallisen dokumentaation oppaan tässä .