Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 10964|Válasz: 8

[linux] Részletes magyarázata a Linux systemd szolgáltatáskezelő

[Linket másol]
Közzétéve 2021. 11. 28. 10:02:32 | | | |
a systemd egy alapvető építőelemek halmaza Linux rendszerekhez. Ez egy rendszer- és szolgáltatáskezelőt biztosít, amely PID 1-ként fut és indítja el a rendszer többi részét.

A systemd agresszív párhuzamos lehetőségeket biztosít, socketeket és D-Bus aktiválást használ a szolgáltatások indításához, igény szerint indítja a démonokat, Linux vezérlőcsoportokat használ a folyamatok nyomon követésére, fenntartja a mountokat és automatikus csatlakozási pontokat, valamint jól megtervezett, tranzakciófüggőség-alapú szolgáltatásvezérlési logikát valósít meg. a systemd támogatja a SysV és LSB init szkripteket, és helyettesítheti a sysvinitet.

További részek közé tartoznak a naplódémonok, alapvető rendszerkonfigurációk, például hosztnevek, dátumok, helyszínek vezérlésére szolgáló segédeszközök, bejelentkezett felhasználók listájának fenntartása, valamint konténerek és virtuális gépek futtatása, rendszerfiókok, futási idejű könyvtárak és beállítások kezelése, valamint egyszerű hálózatok démonkonfigurációinak kezelése, hálózati időszinkronizáció, naplótovábbítás és névfeloldás.

A systemd konfigurációs fájl a következő három mappában található:         

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

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

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

A Linux a Systemd szolgáltatás napló kimenetét vizsgálja
https://www.itsvse.com/thread-10154-1-1.html

Jenkins (4) Hozzáadni egy Linux csomópontot és regisztrálni szolgáltatásként
https://www.itsvse.com/thread-10120-1-1.html

CentOS 7 telepíti a Node exportert
https://www.itsvse.com/thread-9969-1-1.html

Egységprofil

Az egységfájl a systemd-ben egy olyan fájl, amely kódolja azokat az egységeket, amelyeket a systemd kezelni tud, beleértve a szolgáltatásokat, socketeket, eszközöket és így tovább. Ez az útmutató a szolgáltatásokra fókuszál, ebben az esetben az egységfájl, amivel dolgozunk, a .service fájl. A varnish.service eszköz konfigurációs fájl információkat tartalmaz arról, hogyan kell a systemd-nek végrehajtania, figyelnie és kezelnie a lakk démont.

Az [Egység] blokk általában a konfigurációs fájl első blokkoja, és azt használják az egység metaadatainak meghatározására, valamint annak más egységekkel való kapcsolatának meghatározására. Fő területei a következők.

  • Leírás: Rövid leírás
  • Dokumentáció: A dokumentum címe
  • Megköveteli: Más egységeket, amelyekre a jelenlegi egység támaszkodik, és ha nem futnak, az aktuális egység nem indul el
  • Vágyak: Más egységek, amelyek a jelenlegi egységgel dolgoznak, ha nem futnak, a jelenlegi egység nem fog elindulni
  • BindsTo: A Reweles függvényéhez hasonlóan egy egységet határoz meg, amely miatt a jelenlegi egység leáll, ha kilép
  • Előtte: Ha a ebben a mezőben megadott egységet is el kell indítani, akkor az aktuális egység után kell elindítani
  • Utána: Ha a ebben a mezőben megadott egységet is el kell indítani, akkor az aktuális egység előtt kell elindítani
  • Ütközések: Az itt megadott egység nem fut egyszerre a jelenlegi egységgel
  • Feltétel... : Azok a feltételek, amelyeket teljesíteni kell a jelenlegi egység futásához, különben nem fog futni
  • Állít... : Azok a feltételek, amelyeket teljesíteni kell a jelenlegi egység futásához, különben a indítási hibát jelentik

Az [Install] általában az utolsó blokk a konfigurációs fájlban, amely meghatározza, hogyan kell indítani és hogy induljon-e. Fő területei a következők.

  • WantedBy: Az értéke egy vagy több Célpont, és amikor az aktuális egység aktív (engedélyezett), a szimblinket egy alkönyvtárba helyezik az /etc/systemd/system könyvtár alatt, a Cél név + .wants utótaggal
  • RequiredBy: Az értéke egy vagy több Célpont, és amikor az aktuális egység aktív, a szimbollinket egy alkönyvtárba helyezik el az /etc/systemd/system könyvtár alatt, a célnév + .required toldalagnyal
  • Alias: Az álnév, amit a jelenlegi egység használhat a kezdéshez
  • Továbbá: Amikor a jelenlegi egység aktiválódik, más egységek is egyszerre aktiválódnak

A [Szolgáltatás] blokkot használják a szolgáltatás konfigurálására, és csak a Szolgáltatás típusú egységek rendelkeznek ezzel a blokkal. Fő területei a következők.

  • Típus: Definiálja a folyamat működését az indításkor. A következő értékeket kapja.
  • Type=simple: Az alapértelmezett érték, az ExecStart által megadott parancsot hajtsd végre a fő folyamat elindításához
  • type=forking: A fork létrehoz egy gyermekfolyamatot az anyafolyamatból, amely a létrehozás után azonnal kilép
  • Type=oneshot: Egy egyszeri folyamat, a Systemd megvárja, amíg a jelenlegi szolgáltatás kilép, mielőtt folytatná a végrehajtást
  • Type=dbus: A jelenlegi szolgáltatás D-Buson indul
  • type=notify : Amikor a jelenlegi szolgáltatás elindul, a Systemd értesítést kap, és folytatja a végrehajtást
  • type=idle: A jelenlegi szolgáltatás csak akkor fut, ha más feladatokat is végrehajtanak
  • ExecStart: A parancs a jelenlegi szolgáltatás elindítására
  • ExecStartPre: A parancs, amelyet a jelenlegi szolgáltatás indítása előtt hajtottak végre
  • ExecStartPost: Az aktuális szolgáltatás indítása után végrehajtott parancs
  • ExecReload: Az a parancs, amelyet a jelenlegi szolgáltatás újraindításakor hajtanak végre
  • ExecStop: Az a parancs, amelyet akkor hajtanak végre, amikor a jelenlegi szolgáltatás megáll
  • ExecStopPost: Állítsd meg azt a parancsot, amelyet teljesítik, amikor azt teljesítik.
  • RestartSec: Az automatikus szolgáltatás közötti másodpercek száma, újraindítják az aktuális szolgáltatást
  • Újraindítás: Meghatározza azokat a körülményeket, amelyek között a Systemd automatikusan újraindítja a jelenlegi szolgáltatást, lehetséges értékekkel, mint mindig, sikertelen, hibás, anormal, megszakítva, figyelő
  • TimeoutSec: Meghatározza a Systemd várakozási másodperceinek számát, mielőtt leállítaná a jelenlegi szolgáltatást
  • Környezet: Megadni a környezeti változót

Systemctl menedzsment eszköz

A CentOS-ban a programmenedzsmentet alapvetően a systemctl eszköz végzi.

Startup Service:

systemctl Start name.service

A szolgáltatás megszüntetése:

systemctl stop name.service

Újraindítás a szolgáltatás:

systemctl restart name.service

Állapot megtekintése:

systemctl status name.service

Feltételes újraindítás:

Ha a szolgáltatást korábban elindították, újraindítják, ha pedig nem indul el, akkor nem üzemelnek

systemctl try-restart name.service

Újratöltés vagy újraindítás:

Először újratöltés, és ha a töltés sikertelen, újraindítsd

systemctl reload-or-restart name.service

Újratöltés vagy feltételes újraindítás:

systemctl reload-or-try-restart name.service

Állítja, hogy a felhasználó beállíthatja-e a szolgáltatást az állapot elindításához

systemctl unmask name.service

systemctl maszk name.service tilos

Tekintse meg a szolgáltatás aktuális aktiválási állapotát:

A szolgáltatás indított parancs státuszvisszaküldési értéke 0. A nem indított parancs státuszvisszaküldési értéke nem 0

systemctl is-active name.service

Tekintse meg az összes aktivált szolgáltatást:

-t Megadja a megjelenített egység típusát.

--mindegyik részletesebb információlistát jelenít meg.

-egy ekvivalens --mind

systemctl listaegységek

systemctl list-units -t service

systemctl list-units -t service -a

Minden szolgáltatás megtekintése:

systemctl listaegységek -a

Minden szolgáltatási státusz megtekintése:

systemctl list-unit-files

-a 、--all : Tekintse meg az összes szolgáltatás állapotát

-t 、--type: Megadja a megtekintendő egység típusát

betöltve: A konfigurációs fájl betöltött és betöltött a memóriába

aktív(futás): Olyan futások, amelyeket folyamatosan egy vagy több alkalommal dolgoznak fel

aktív(kilépett): Az egyszeri konfiguráció sikeresen befejeződött

aktív(várakozás): Fut, vár egy eseményre

inactive:不运行

enabled:开机启动

disabled:开机不启动

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

Azt használjuk, hogy felsorolják, mely működési szinten engedélyezett és letiltott a szolgáltatás

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

systemctl list-unit-files --type target --all

A szolgáltatás beállításához, hogy ne induljon:

systemctl Disable Service Name Unit

Ellenőrizd, hogy a szolgáltatás el van-e indítva és elindulva:

Systemctl is enabled name.service

Nézze meg a szolgáltatásfüggőséget:

systemctl list-dependencies name.service
systemctl list-depebdencies

Nehéz terheléses szolgáltatás:

systemctl daemon-reload

Öld meg a folyamatot:

systemctl kill process név

Erőforrások:

A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.





Előző:A Linux az LDAP kapcsolatot a Curl parancs segítségével teszteli
Következő:vsftp feltöltési fájl engedély kérdése
 Háziúr| Közzétéve 2021. 12. 11. 17:35:26 |
[Egység]A blokk általában egy konfigurációs fájl első blokkja, amely meghatározza egy egység metaadatait és annak kapcsolatát más egységekkel. Fő területei a következők.

Leírás: Rövid leírás
Dokumentáció: A dokumentum címe
Megköveteli: Más egységeket, amelyekre a jelenlegi egység támaszkodik, és ha nem futnak, az aktuális egység nem indul el
Vágyak: Más egységek, amelyek a jelenlegi egységgel dolgoznak, ha nem futnak, a jelenlegi egység nem fog elindulni
BindsTo: A Reweles függvényéhez hasonlóan egy egységet határoz meg, amely miatt a jelenlegi egység leáll, ha kilép
Előtte: Ha a ebben a mezőben megadott egységet is el kell indítani, akkor az aktuális egység után kell elindítani
Utána: Ha a ebben a mezőben megadott egységet is el kell indítani, akkor az aktuális egység előtt kell elindítani
Ütközések: Az itt megadott egység nem fut egyszerre a jelenlegi egységgel
Feltétel... : Azok a feltételek, amelyeket teljesíteni kell a jelenlegi egység futásához, különben nem fog futni
Állít... : Azok a feltételek, amelyeket teljesíteni kell a jelenlegi egység futásához, különben a indítási hibát jelentik
[Telepítés]Általában a konfigurációs fájl utolsó blokkja határozza meg, hogyan kell elindulni és hogy induljon-e. Fő területei a következők.

WantedBy: Az értéke egy vagy több Célpont, és amikor az aktuális egység aktív (engedélyezett), a szimblinket egy alkönyvtárba helyezik az /etc/systemd/system könyvtár alatt, a Cél név + .wants utótaggal
RequiredBy: Az értéke egy vagy több Célpont, és amikor az aktuális egység aktív, a szimbollinket egy alkönyvtárba helyezik el az /etc/systemd/system könyvtár alatt, a célnév + .required toldalagnyal
Alias: Az álnév, amit a jelenlegi egység használhat a kezdéshez
Továbbá: Amikor a jelenlegi egység aktiválódik, más egységek is egyszerre aktiválódnak
[Szertartás]A blokkok a szolgáltatások konfigurálására szolgálnak, és csak a Service típusú egységek rendelkeznek ezzel a blokkal. Fő területei a következők.

Típus: Definiálja a folyamat működését az indításkor. A következő értékeket kapja.
Type=simple: Az alapértelmezett érték, az ExecStart által megadott parancsot hajtsd végre a fő folyamat elindításához
type=forking: A fork létrehoz egy gyermekfolyamatot az anyafolyamatból, amely a létrehozás után azonnal kilép
Type=oneshot: Egy egyszeri folyamat, a Systemd megvárja, amíg a jelenlegi szolgáltatás kilép, mielőtt folytatná a végrehajtást
Type=dbus: A jelenlegi szolgáltatás D-Buson indul
type=notify : Amikor a jelenlegi szolgáltatás elindul, a Systemd értesítést kap, és folytatja a végrehajtást
type=idle: A jelenlegi szolgáltatás csak akkor fut, ha más feladatokat is végrehajtanak
ExecStart: A parancs a jelenlegi szolgáltatás elindítására
ExecStartPre: A parancs, amelyet a jelenlegi szolgáltatás indítása előtt hajtottak végre
ExecStartPost: Az aktuális szolgáltatás indítása után végrehajtott parancs
ExecReload: Az a parancs, amelyet a jelenlegi szolgáltatás újraindításakor hajtanak végre
ExecStop: Az a parancs, amelyet akkor hajtanak végre, amikor a jelenlegi szolgáltatás megáll
ExecStopPost: Állítsd meg azt a parancsot, amelyet teljesítik, amikor azt teljesítik.
RestartSec: Az automatikus szolgáltatás közötti másodpercek száma, újraindítják az aktuális szolgáltatást
Újraindítás: Meghatározza azokat a körülményeket, amelyek között a Systemd automatikusan újraindítja a jelenlegi szolgáltatást, lehetséges értékekkel, mint mindig, sikertelen, hibás, anormal, megszakítva, figyelő
TimeoutSec: Meghatározza a Systemd várakozási másodperceinek számát, mielőtt leállítaná a jelenlegi szolgáltatást
Környezet: Megadni a környezeti változót


 Háziúr| Közzétéve 2021. 12. 11. 17:37:33 |
Type=forking
A systemd úgy véli, hogy a szolgáltatás sikeresen indul, amikor a szolgáltatási folyamat elágul, és a szülő folyamat kilép. A sima démonok esetében, hacsak nem vagy biztos abban, hogy ez a indítási módszer nem felel meg az igényeidnek, ezzel a típussal kezdheted. Ezzel a startup típussal a PIDFile= is meg kell határozni, hogy a systemd nyomon tudja követni a szolgáltatás fő folyamatát

 Háziúr| Közzétéve 2021. 12. 15. 16:55:14 |
EnvironmentFile parancs

Az EnvironmentFile hasonló a Környezet irányelvhez, de szövegfájlból olvassa fel a környezeti változókat. A szövegfájlnak tartalmaznia kell a változó hozzárendeléseket, amelyeket sortörések választanak el

példa

Ezt a környezeti fájlt a következő változókat használhatod:



 Háziúr| Közzétéve 2022. 01. 04. 15:56:55 |
 Háziúr| Közzétéve 2022. 01. 05. 9:48:21 |
Docker alapértelmezett szolgáltatásfájl útja /usr/lib/systemd/system/docker.service

 Háziúr| Közzétéve 2022. 01. 23. 22:57:56 |
Minden szolgáltatási státusz megtekintése



Kérdezd meg, hogy egy szolgáltatás be van kapcsolva, például az NFS-t:

 Háziúr| Közzétéve 2025. 02. 25. 17:01:08 |
Tömeges indítási járatok, amelyek ABC-vel kezdődnek

 Háziúr| Közzétéve 2025. 04. 11. 15:57:14 |
DefaultTimeoutStartSec= és DefaultTimeoutStopSec= alapértelmezetten 90 másodperc a Rendszerkezelőben, 90 másodperc a Felhasználói Kezelőben.

A hiperlink bejelentkezés látható.

Tekintse meg a megadott szolgáltatás konfigurációját a következő parancsval:


Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com