Felhasználói szolgáltatások létrehozása és kezelése Linuxon

Felhasznaloi Szolgaltatasok Letrehozasa Es Kezelese Linuxon



A Linux normál felhasználója létrehozhat egyéni rendszerszolgáltatást. Míg a systemd szolgáltatásokat nagyrészt a rendszergazdák kezelik a systemctl paranccsal. Ugyanez a parancs használható felhasználó-specifikus szolgáltatások kezelésére is; csak a – felhasználó zászló.

Ebben az útmutatóban bemutatom, hogyan hozhat létre felhasználó-specifikus szolgáltatást Linuxon, és hogyan kezelheti azt a systemctl használatával.

A normál felhasználói szolgáltatás oka

A normál felhasználói szolgáltatás eltér a rendszerszolgáltatástól. A normál felhasználói szolgáltatás bejelentkezett felhasználó-központú. Ez a szolgáltatás csak annak a felhasználónak a munkamenetében fog működni, aki létrehozta.







Normál felhasználói szolgáltatás létrehozása

A felhasználó-specifikus szolgáltatások Linuxon a ~/.config/systemd/user Könyvtár. Ha ez a könyvtár nincs jelen, akkor létrehozható.

mkdir -o ~ / .config / systemd / felhasználó

A -o A jelzőt a szülőkönyvtár létrehozására használják, ha szükséges. A ~ a helyi felhasználó saját könyvtárát jelzi, és egyenértékű a /home/user míg a konfigurációs fájl előtti pont rejtettvé teszi. Hozzunk létre egy egyszerű bash script fájlt, amely 30 percenként szövegbe írja a memóriahasználatot. nevével készítem el a szkriptet script.sh .

#! /bin/bash

míg igaz

csináld

ingyenes -m >> / itthon / felhasználó / myfile.txt

alvás 1800

Kész

Ez a szkript bárhol létrehozható, de ügyeljen arra, hogy a szkriptben megadott elérési út abszolút elérési út legyen.

Most hozzunk létre egy szolgáltatást, amely végrehajtja a fenti szkriptet a háttérben. Indítson el bármilyen szövegszerkesztőt, például a Nano-t vagy a Vim-et, és illessze be az alábbi sorokat.

[ Mértékegység ]

Leírás =Szolgálatom

[ Szolgáltatás ]

típus = egyszerű

ExecStart = / kuka / bash / itthon / felhasználó / script.sh

Újrakezd =hiba esetén

[ Telepítés ]

WantedBy =default.target

Az [Egység] részben a Leírás direktíva egyszerűen a szolgáltatás nevét tartalmazza. Vegye figyelembe, hogy nem lehet több 80 karakternél.

A [Szolgáltatás] szakasz a három fontos irányelvet tartalmazza. Először is a típus ; ami egyszerű , akkor ExecStart amely tartalmazza az egyéni szkriptünk végrehajtható fájlját. A szolgáltatás csak hiba esetén indul újra.

Az [Install] szakasz tartalmazza a WantedBy direktíva, amely az default.target , ami azt jelenti, hogy a szolgáltatás a rendszerállapotban lesz engedélyezve, amikor eléri az alapértelmezett futási szintet, amely általában többfelhasználós.target vagy grafikus.cél.

Most mentse a fájlt a ~/.config/systemd/user könyvtár bármilyen névvel; én nevezem el myservice.service .

Normál felhasználói szolgáltatás kezelése

A normál felhasználói szolgáltatás kezeléséhez a systemctl parancsot a – felhasználó zászló. A – felhasználó A zászló azt jelenti, hogy a felhasználó a szolgáltatásmenedzserrel veszi fel a kapcsolatot, nem pedig a rendszerrel.

A felhasználó-specifikus szolgáltatásfájl létrehozása után az első döntő lépés a systemd konfigurációs fájlok újratöltése.

systemctl --felhasználó démon-újratöltés

Ez alkalmazza a módosításokat.

Ha meg szeretné tudni, hogy a szolgáltatás fut-e vagy sem, használja a systemctl parancsot a – felhasználó zászló és opció.

systemctl --felhasználó állapot [ szolgáltatás neve ]

Az alábbiakban megemlítjük a normál felhasználói szolgáltatás kezeléséhez szükséges egyéb parancsokat:

systemctl --felhasználó Rajt [ szolgáltatás neve ]

systemctl --felhasználó engedélyezze [ szolgáltatás neve ]

systemctl --felhasználó állj meg [ szolgáltatás neve ]

systemctl --felhasználó letiltása [ szolgáltatás neve ]

systemctl --felhasználó újrakezd [ szolgáltatás neve ]

Normál felhasználói szolgáltatás létrehozása rendszergazdai jogosultságokkal

A felhasználók számos szolgáltatást hozhatnak létre, de ezek futtatásához rendszergazdai engedély szükséges. Ilyen szolgáltatások a hozzáadásával hozhatók létre Felhasználó utasítást a [Szolgáltatás] részhez.

A Felhasználó direktívával megemlíthetjük annak a felhasználónak a nevét, akinek a jogosultságai szükségesek a szolgáltatás futtatásához, mint pl admin . Tehát, ha egy normál felhasználó olyan szolgáltatást szeretne létrehozni, amely rendszergazdai engedélyeket igényel, akkor egyszerűen adja hozzá a User=admin a [Szolgáltatás] részben elvégzi a munkát. Ez a szolgáltatás azonban mindaddig aktív marad, amíg az adminisztrátor aktív. Vegye figyelembe, hogy ezt a szolgáltatást az adminisztrátor közvetlenül nem vezérelheti.

Következtetés

A normál felhasználó is létrehozhat rendszerszolgáltatást, de azt el kell helyezni ~/.config/systemd/user Könyvtár. Ez a szolgáltatás addig fut, amíg az azt létrehozó felhasználó be van jelentkezve. Ezeket a szolgáltatásokat is a systemctl paranccsal lehet felügyelni, de – felhasználó zászló. Ez azt mondja a systemd-nek, hogy a szolgáltatást a felhasználó hívja, nem a rendszer. Ebben az útmutatóban létrehoztam egy egyéni normál felhasználói szolgáltatást, és említettem a systemctl parancsokat a kezeléséhez. Ezenkívül kiemeltem egy olyan szolgáltatás létrehozásának módszerét is, amely rendszergazdai jogosultságokat igényel.