Szolgáltatás vs. Systemctl

Szolgaltatas Vs Systemctl



A service és a systemctl két parancssori segédprogram, amelyeket a rendszerszolgáltatások kezelésére használnak. Mindkét segédprogram két különböző indítórendszerhez tartozik, a SysV-hez és a systemd-hez.

Ebben az útmutatóban a service és systemctl parancsokról fogok beszélni, valamint arról, hogy miben különböznek a szolgáltatáskezelésről.

Mielőtt továbbmennénk, ismerjünk meg két népszerű Linux init rendszert; System és Systemd.







System V vs Systemd

A Linux init rendszere a rendszerindítási folyamat döntő része. Ez az első PID 1-es folyamat, amely a rendszer indításakor indul el. Ezután elindítja az inittab fájlban található folyamatokat. A System V is ismer egy SysV-t, a systemd pedig népszerű Linux init rendszerek.



A SysV egy régebbi indítórendszer, és régebbi Unix és Linux disztribúciók része volt. A rendszerszolgáltatásokat az /etc/init.d fájlban található szkriptek segítségével kezeli. Néhány Linux disztribúció, amely még mindig SysV-t használ, a Slackware, a Gentoo és az antiX Linux.



Másrészről, systemd 2010-ben indult, és gyorsan átvette számos Linux disztribúció. A systemd init rendszer .service fájlokon keresztül kezeli a szolgáltatásokat. Ma már az összes modern Linux disztribúció része, beleértve a Red Hat Enterprise Linuxot, a CentOS-t, az Amazon Linuxot, a Fedorát, a Debiant, az Ubuntu-t és az ezen operációs rendszereken alapuló disztribúciókat.





A systemd sokkal hatékonyabb a SysV-hez képest. Gyorsabb rendszerindítási időt, hatékony szolgáltatáskezelést és függőségek kezelését biztosítja.

Mindkét init rendszer két parancssori segédprogramot biztosít a szolgáltatáskezeléshez.



Az útmutató következő részeiben ezt a két segédprogramot tárgyalom.

szervizparancs

A szolgáltatás parancs egy szkriptburkoló, amely a következőben található szkripteket futtatja /etc/init.d Könyvtár. Szolgáltatásának kezelésére fejlesztették ki SysV vagy V. rendszer init rendszer. A SysV-t indítórendszerként használó Linux disztribúciók a szolgáltatás parancs a szolgáltatáskezeléshez.

A service parancs használatának általános szintaxisa alább látható.

szolgáltatás [ szolgáltatás neve ] [ akció ]

A System V által vezérelt szolgáltatások állapotának megtekintéséhez használja a service parancsot a –állapot-minden választási lehetőség.

szolgáltatás --status-all

A + azt jelzi, hogy a szolgáltatás fut, és a azt mutatja, hogy a szolgáltatás inaktív.

Egy adott szolgáltatás aktuális állapota a szolgáltatás nevének megadásával is ellenőrizhető.

szolgáltatás [ szolgáltatás neve ] állapot

Az alábbiakban felsorolunk néhány további hasznos szolgáltatásparancsot, mint például a szolgáltatás indítása, leállítása és újraindítása.

szolgáltatás [ szolgáltatás neve ] Rajt

szolgáltatás [ szolgáltatás neve ] állj meg

szolgáltatás [ szolgáltatás neve ] újrakezd

Ez a szolgáltatásparancs alapvető vezérlést biztosít a szolgáltatások kezeléséhez. A legtöbb Linux-disztribúció a SysV-t initrendszerként váltotta fel, de az örökölt kompatibilitás miatt ez a parancs továbbra is számos legújabb Linux-disztribúcióban megtalálható.

systemctl parancs

A systemctl paranccsal vezérelheti a szolgáltatásokat a /lib/systemd/system és /etc/systemd/system könyvtárakat. A systemd összetevője; a legtöbb kortárs Linux disztribúcióban megtalálható init rendszer.

A systemctl-t úgy tervezték, hogy nagyobb ellenőrzést biztosítson a rendszerszolgáltatás-kezelés felett. A systemctl parancs használatának általános szintaxisa az alábbiakban található:

systemctl [ választási lehetőség ] [ szolgáltatás neve ]

Az összes szolgáltatás állapotának ellenőrzéséhez használja a következő parancsot.

systemctl lista-egységek --típus =szolgáltatás --minden

Egy adott szolgáltatás igénybevételéhez:

systemctl állapot [ szolgáltatás neve ]

A rendszerctl használatával a szolgáltatás alapvető kezeléséhez szükséges parancsok az alábbiak:

systemctl engedélyezze [ szolgáltatás neve ]

systemctl start [ szolgáltatás neve ]

systemctl stop [ szolgáltatás neve ]

systemctl letiltása [ szolgáltatás neve ]

systemctl újraindítás [ szolgáltatás neve ]

A systemctl parancs túlmutat a szolgáltatások vezérlésén. Az alábbi táblázat néhány speciális systemctl parancsot tartalmaz.

lista-útvonalak A memóriában lévő összes szolgáltatás elérési útjának felsorolása
aktív [szolgáltatás_neve] Annak ellenőrzésére, hogy a szolgáltatás vagy az egység fut-e vagy sem
list-dependencies [szolgáltatás_neve] A megadott szolgáltatás függőségi listájának kinyomtatása
reset-sikertelen Azon szolgáltatások alaphelyzetbe állítása, amelyek betöltése valamilyen rendellenesség miatt nem sikerült
maszk [szolgáltatás_neve] A szolgáltatás letiltása és az indítás lehetetlenné tétele
get-default Az alapértelmezett futási szint vagy cél kinyomtatása
set-default [cél] Az alapértelmezett futási szint vagy cél beállításához
is-rendszer fut A rendszer működési állapotának ellenőrzésére
újraindítás A rendszer újraindításához
kikapcsolni A rendszer leállításához

Miért van még mindig szolgáltatásparancs a systemd init rendszerű Linux disztribúciókban?

A service parancs még mindig sok Linux-disztribúció része, mert egy burkoló szkript, és absztrahálja a mögöttes indítórendszert, legyen az SysV vagy systemctl. Például Ubuntu esetén a service parancs átirányít a systemctl fájlra.

Következtetés

A service és a systemctl két parancssori segédprogram, amelyek a SysV és a systemd init rendszerekhez tartoznak. Annak ellenére, hogy a modern Linux disztribúciókban lecserélték a service parancsot, az egyszerűség és a kompatibilitás miatt továbbra is kulcsfontosságú eszköz a szolgáltatások karbantartásához. A systemctl viszont az összes jelenlegi Linux-disztribúció része, és fejlett lehetőségeket biztosít a szolgáltatásadminisztrációhoz.