See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 10964|Vastuse: 8

[linux] Linux systemd teenusehaldur selgitab üksikasjalikult

[Kopeeri link]
Postitatud 28.11.2021 10:02:32 | | | |
systemd on põhiliste ehitusplokkide komplekt Linuxi süsteemidele. See pakub süsteemi- ja teenusehaldurit, mis käivitab ja käivitab ülejäänud süsteemi PID 1-na.

systemd pakub agressiivset paralleeliseerimise võimalusi, kasutab sokleid ja D-bussi aktiveerimist teenuste käivitamiseks, pakub daemonite nõudmisel käivitamist, kasutab Linuxi juhtimisgruppe protsesside jälgimiseks, haldab kinnitusi ja automaatseid kinnituspunkte ning rakendab hästi kavandatud tehingusõltuvuspõhist teenuse juhtimise loogikat. systemd toetab SysV ja LSB init skripte ning võib asendada sysvinit'i.

Teised sektsioonid hõlmavad logideemone, utiliite, mis kontrollivad põhilisi süsteemi konfiguratsioone nagu hostinimed, kuupäevad, asukohad, sisselogitud kasutajate nimekirja haldamine ning konteinerite ja virtuaalmasinate käivitamine, süsteemikontod, käituskataloogid ja seaded, samuti lihtsate võrkude deemonikonfiguratsioonide haldamine, võrguaja sünkroniseerimise, logide edastamise ja nimede lahendamise haldamist.

Systemd konfiguratsioonifail asub järgmistes kolmes kaustas:         

/etc/systemd/system 存放系统启动的默认级别及启动的unit的软连接,优先级最高。

/run/systemd/system 系统执行过程中产生的服务脚本,优先级次之。

/usr/lib/systemd/system 存放系统上所有的启动文件,优先级最低。
Läbivaatamine:

Linux vaatleb Systemd teenuse logiväljundit
https://www.itsvse.com/thread-10154-1-1.html

Jenkins (4) Lisa Linuxi sõlm ja registreeri see teenusena
https://www.itsvse.com/thread-10120-1-1.html

CentOS 7 paigaldab Node eksporteri
https://www.itsvse.com/thread-9969-1-1.html

Üksuse profiil

Ühikufail systemd-s on fail, mis kodeerib infot erinevate üksuste kohta, mida systemd suudab hallata, sealhulgas teenused, pesad, seadmed jms. See juhend keskendub teenustele, sel juhul on üksusfail, millega töötame, .service-fail. varnish.service seadme konfiguratsioonifail sisaldab infot selle kohta, kuidas systemd peaks varnish deemoni käivitama, jälgima ja haldama.

[Ühiku] plokk on tavaliselt konfiguratsioonifaili esimene plokk, mida kasutatakse Üksuse metaandmete ja selle seose määratlemiseks teiste üksustega. Selle peamised valdkonnad on järgmised.

  • Kirjeldus: Lühike kirjeldus
  • Dokumentatsioon: dokumendi aadress
  • Nõuab: Teisi üksusi, kellest praegune üksus sõltub, ja kui need ei tööta, ei käivitu praegune ühik
  • Soovib: Teised üksused, mis töötavad praeguse üksusega, kui nad ei tööta, ei ebaõnnestu praegune üksus käivitumast
  • BindsTo: Sarnaselt nõudmistele määrab see üksuse, mis põhjustab praeguse üksuse töötamise lõpetamise, kui see väljub
  • Enne: Kui selles väljas nimetatud üksus tuleb samuti käivitada, peab see algama pärast praegust ühikut
  • Pärast: Kui ka selles väljas nimetatud ühik tuleb käivitada, peab see olema käivitatud enne praegust ühikut
  • Konfliktid: Siin nimetatud üksus ei saa töötada samal ajal praeguse üksusega
  • Tingimus... : tingimused, mis peavad olema täidetud, et praegune ühik töötaks, vastasel juhul see ei tööta
  • Väita... : Tingimused, mis peavad olema täidetud, et praegune seade töötaks, vastasel juhul teatatakse käivitamise rike

[Install] on tavaliselt konfiguratsioonifaili viimane plokk, mis määrab, kuidas käivitada ja kas käivitada. Selle peamised valdkonnad on järgmised.

  • WantedBy: Selle väärtus on üks või mitu sihtmärki ning kui praegune üksus on aktiivne (lubab), paigutatakse sümboollink alamkaustasse /etc/systemd/system kataloogi all koos sihtmärgi nimega + .wants järelliide
  • RequiredBy: Selle väärtus on üks või mitu sihtmärki ning kui praegune üksus on aktiivne, paigutatakse sümboollink alamkataloogkonda /etc/systemd/system kataloogi all koos sihtmärgi nimega + .required järelliitega
  • Alias: Varjunimi, mida praegune üksus saab kasutada alustamiseks
  • Samuti: Kui praegune üksus aktiveeritakse, aktiveeritakse samal ajal ka teised üksused

[Service] plokki kasutatakse teenuse seadistamiseks ning ainult teenusetüübi üksustel on see plokk. Selle peamised valdkonnad on järgmised.

  • Tüüp: Määratleb protsessi käivitumise käivitumisel. Sellel on järgmised väärtused.
  • Type=simple: Vaikimisi väärtus, täida ExecStarti määratud käsk, et käivitada põhiprotsess
  • type=forking: Fork loob vanemprotsessist lapsprotsessi, mis väljub kohe pärast loomist
  • Type=oneshot: Ühekordne protsess, Systemd ootab, kuni praegune teenus väljub, enne kui jätkab täitmist
  • Type=dbus: Praegune teenus algab D-bussi kaudu
  • type=teavita: Kui praegune teenus käivitatakse, teavitatakse Systemd ja jätkab täitmist
  • type=idle: praegune teenus töötab ainult siis, kui täidetakse muid ülesandeid
  • ExecStart: käsk käivitada praegune teenus
  • ExecStartPre: Käsk, mis käivitati enne praeguse teenuse käivitamist
  • ExecStartPost: käsk, mis käivitatakse pärast praeguse teenuse käivitamist
  • ExecReload: käsk, mis täidetakse, kui praegune teenus taaskäivitatakse
  • ExecStop: käsk, mis täidetakse, kui praegune teenus peatatakse
  • ExecStopPost: Peata käsk, mis täidetakse selle täitmisel
  • RestartSec: Sekundite arv automaatse teenuse vahel taaskäivitab praeguse teenuse
  • Taaskäivitamine: Määratleb tingimused, mille korral Systemd automaatselt taaskäivitab praeguse teenuse, koos võimalike väärtustega nagu alati, õnnestumisel, ebaõnnestumisel, ebaõnnestumisel, katkestusel, valvekoer
  • TimeoutSec: Määrab, mitu sekundit Systemd ootab enne praeguse teenuse peatamist
  • Keskkond: Määra keskkonnamuutuja

Systemctl haldustööriist

Programmihaldus CentOS-is toimub põhimõtteliselt tööriista systemctl poolt.

Idufirmateenus:

systemctl start name.service

Teenuse lõpetamine:

systemctl stop name.service

Teenuse taaskäivitamine:

systemctl restart name.service

Vaata staatust:

systemctl status name.service

Tingimuslik taaskäivitamine:

Kui teenus alustati varem, taaskäivitatakse see, ja kui teenust ei käivitata, siis seda ei käivitata

systemctl try-restart name.service

Laadimine või taaskäivitamine:

Lae esmalt uuesti ja kui laadimine ei õnnestu, taaskäivita

systemctl reload-or-restart name.service

Laadimine või tingimuslik taaskäivitamine:

systemctl reload-or-try-restart name.service

Määrab, kas kasutaja saab teenust seadistada oleku käivitamiseks

systemctl unmask name.service

systemctl mask name.service on keelatud

Vaata teenuse praegust aktiveerimise staatust:

Teenuse käivitatud käsu staatuse tagastuse väärtus on 0 Käsu staatuse tagastuse väärtus, mida pole käivitatud, on mitte-0

systemctl is-active name.service

Vaata kõiki aktiveeritud teenuseid:

-t Määrab kuvatava ühiku tüübi.

--kõik kuvavad üksikasjalikumat infoloendit.

-ekvivalent --kõik

systemctl nimekirjaühikud

systemctl list-ühikud -t teenus

systemctl list-ühikud -t teenus -a

Vaata kõiki teenuseid:

systemctl list-ühikud -a

Vaata kõiki teenuse staatuseid:

systemctl list-unit-files

-a 、--all : Vaata kõigi teenuste staatust

-t 、--tüüp: Määrab vaadeldava üksuse tüübi

loaded: Konfiguratsioonifail on laaditud, laaditud mällu

aktiivne (jooks): Jooksud, mida pidevalt töödeldakse üks või mitu korda

active(exed): Ühekordne konfiguratsioon on edukalt lõpetatud

aktiivne(ootab): Jookseb, ootan sündmust

inactive:不运行

enabled:开机启动

disabled:开机不启动

static:开机不启动,但可被另一个启用的服务激活

Kasutatakse selleks, et loetleda, millistel töötasemetel teenus on lubatud ja keelatud

ls /etc/systemd/system/*.wants/sshd.service

systemctl list-unit-files --tüüp sihtmärk --kõik

Teenuse seadistamiseks nii, et see ei käivituks:

systemctl keela teenuse nime üksus

Kontrolli, kas teenus on käivitatud ja käivitatud:

systemctl on lubatud name.service

Vaata teenusesõltuvusi:

systemctl list-dependencies name.service
systemctl list-depebdencies

Raskekoormuse teenus:

systemctl daemon-reload

Lõpeta protsess:

systemctl tapmisprotsessi nimi

Ressursse:

Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.





Eelmine:Linux testib LDAP-ühenduvust Curl käsuga
Järgmine:VSFTP üleslaadimisfaili loa probleem
 Üürileandja| Postitatud 11.12.2021 17:35:26 |
[Üksus]Plokk on tavaliselt konfiguratsioonifaili esimene plokk, mis määratleb üksuse metaandmed ja selle seose teiste üksustega. Selle peamised valdkonnad on järgmised.

Kirjeldus: Lühike kirjeldus
Dokumentatsioon: dokumendi aadress
Nõuab: Teisi üksusi, kellest praegune üksus sõltub, ja kui need ei tööta, ei käivitu praegune ühik
Soovib: Teised üksused, mis töötavad praeguse üksusega, kui nad ei tööta, ei ebaõnnestu praegune üksus käivitumast
BindsTo: Sarnaselt nõudmistele määrab see üksuse, mis põhjustab praeguse üksuse töötamise lõpetamise, kui see väljub
Enne: Kui selles väljas nimetatud üksus tuleb samuti käivitada, peab see algama pärast praegust ühikut
Pärast: Kui ka selles väljas nimetatud ühik tuleb käivitada, peab see olema käivitatud enne praegust ühikut
Konfliktid: Siin nimetatud üksus ei saa töötada samal ajal praeguse üksusega
Tingimus... : tingimused, mis peavad olema täidetud, et praegune ühik töötaks, vastasel juhul see ei tööta
Väita... : Tingimused, mis peavad olema täidetud, et praegune seade töötaks, vastasel juhul teatatakse käivitamise rike
[Paigaldamine]Tavaliselt on see konfiguratsioonifaili viimane plokk, mis määrab, kuidas käivitada ja kas käivitada. Selle peamised valdkonnad on järgmised.

WantedBy: Selle väärtus on üks või mitu sihtmärki ning kui praegune üksus on aktiivne (lubab), paigutatakse sümboollink alamkaustasse /etc/systemd/system kataloogi all koos sihtmärgi nimega + .wants järelliide
RequiredBy: Selle väärtus on üks või mitu sihtmärki ning kui praegune üksus on aktiivne, paigutatakse sümboollink alamkataloogkonda /etc/systemd/system kataloogi all koos sihtmärgi nimega + .required järelliitega
Alias: Varjunimi, mida praegune üksus saab kasutada alustamiseks
Samuti: Kui praegune üksus aktiveeritakse, aktiveeritakse samal ajal ka teised üksused
[Teenistus]Plokke kasutatakse teenuste konfigureerimiseks ning ainult Service-tüüpi ühikutel on see plokk. Selle peamised valdkonnad on järgmised.

Tüüp: Määratleb protsessi käivitumise käivitumisel. Sellel on järgmised väärtused.
Type=simple: Vaikimisi väärtus, täida ExecStarti määratud käsk, et käivitada põhiprotsess
type=forking: Fork loob vanemprotsessist lapsprotsessi, mis väljub kohe pärast loomist
Type=oneshot: Ühekordne protsess, Systemd ootab, kuni praegune teenus väljub, enne kui jätkab täitmist
Type=dbus: Praegune teenus algab D-bussi kaudu
type=teavita: Kui praegune teenus käivitatakse, teavitatakse Systemd ja jätkab täitmist
type=idle: praegune teenus töötab ainult siis, kui täidetakse muid ülesandeid
ExecStart: käsk käivitada praegune teenus
ExecStartPre: Käsk, mis käivitati enne praeguse teenuse käivitamist
ExecStartPost: käsk, mis käivitatakse pärast praeguse teenuse käivitamist
ExecReload: käsk, mis täidetakse, kui praegune teenus taaskäivitatakse
ExecStop: käsk, mis täidetakse, kui praegune teenus peatatakse
ExecStopPost: Peata käsk, mis täidetakse selle täitmisel
RestartSec: Sekundite arv automaatse teenuse vahel taaskäivitab praeguse teenuse
Taaskäivitamine: Määratleb tingimused, mille korral Systemd automaatselt taaskäivitab praeguse teenuse, koos võimalike väärtustega nagu alati, õnnestumisel, ebaõnnestumisel, ebaõnnestumisel, katkestusel, valvekoer
TimeoutSec: Määrab, mitu sekundit Systemd ootab enne praeguse teenuse peatamist
Keskkond: Määra keskkonnamuutuja


 Üürileandja| Postitatud 11.12.2021 17:37:33 |
Type=forking
Systemd arvab, et teenus algab edukalt, kui teenuseprotsess hargneb ja vanemprotsess lõpetatakse. Tavaliste deemonite puhul, kui sa pole kindel, et see käivitamismeetod ei vasta sinu vajadustele, võid alustada just selle tüübiga. Selle käivitustüübi puhul tuleks määrata ka PIDFile=, et systemd saaks jälgida teenuse põhiprotsessi

 Üürileandja| Postitatud 15.12.2021 16:55:14 |
EnvironmentFile käsk

EnvironmentFile on sarnane Keskkonna direktiivile, kuid loeb keskkonnamuutujaid tekstifailist. Tekstifail peaks sisaldama muutujate määramisi, mis on eraldatud reavahetustega

näide

Selle keskkonnafaili saab kasutada selle muutujaid järgmiselt:



 Üürileandja| Postitatud 04.01.2022 15:56:55 |
 Üürileandja| Postitatud 05.01.2022 09:48:21 |
docker vaikimisi teenusefaili tee /usr/lib/systemd/system/docker.service

 Üürileandja| Postitatud 23.01.2022 22:57:56 |
Vaata kõiki teenuse staatuseid



Küsi, kas teenus on sisse lülitatud, kasutades näiteks NFS-i:

 Üürileandja| Postitatud 25.02.2025 17:01:08 |
Hulgistarditeenused, mis algavad ABC-ga

 Üürileandja| Postitatud 11.04.2025 15:57:14 |
DefaultTimeoutStartSec= ja DefaultTimeoutStopSec= vaikimisi 90 sekundit süsteemihalduris ja 90 sekundit kasutajahalduris.

Hüperlingi sisselogimine on nähtav.

Vaata määratud teenuse konfiguratsiooni järgmise käsuga:


Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com