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:
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ó.
|