Käyttäjäpalveluiden luominen ja hallinta Linuxissa

Kayttajapalveluiden Luominen Ja Hallinta Linuxissa



Normaali Linuxin käyttäjä voi luoda mukautetun systemd-palvelun. Vaikka systemd-palveluita hallitsevat suurelta osin järjestelmänvalvojat systemctl-komennolla. Samaa komentoa voidaan käyttää myös käyttäjäkohtaisten palveluiden hallintaan; kaikki mitä tarvitset on a -käyttäjä lippu.

Tässä oppaassa kerron kuinka luodaan käyttäjäkohtainen palvelu Linuxissa ja miten sitä hallitaan systemctl:llä.

Syy normaaliin käyttäjäpalveluun

Tavallinen käyttäjäpalvelu eroaa järjestelmäpalvelusta. Normaali käyttäjäpalvelu on kirjautuneena käyttäjäkeskeistä. Tämä palvelu toimii vain sen luoneen käyttäjän istunnossa.







Normaalin käyttäjäpalvelun luominen

Linuxin käyttäjäkohtaiset palvelut on sijoitettu ~/.config/systemd/user hakemistosta. Jos tätä hakemistoa ei ole, se voidaan luoda.

mkdir -s ~ / .config / systemd / käyttäjä

The -s lippua käytetään tarvittaessa päähakemiston luomiseen. The ~ ilmaisee paikallisen käyttäjän kotihakemiston ja vastaa /koti/käyttäjä kun taas piste ennen asetustiedostoa piilottaa sen. Luodaan yksinkertainen bash-skriptitiedosto, joka kirjoittaa muistin käytön tekstiin 30 minuutin välein. Luon käsikirjoituksen nimellä script.sh .

#! /bin/bash

sillä aikaa totta

tehdä

vapaa -m >> / Koti / käyttäjä / omatiedosto.txt

nukkua 1800

tehty

Tämä komentosarja voidaan luoda missä tahansa, mutta varmista, että komentosarjan sisällä määritetty polku on absoluuttinen polku.

Luodaan nyt palvelu, joka suorittaa yllä olevan komentosarjan taustalla. Käynnistä mikä tahansa tekstieditori, kuten Nano tai Vim, ja liitä alla annetut rivit siihen.

[ Yksikkö ]

Kuvaus = Palveluni

[ Palvelu ]

Tyyppi = yksinkertainen

ExecStart = / roskakori / lyödä / Koti / käyttäjä / script.sh

Uudelleenkäynnistää =vikatilanteessa

[ Asentaa ]

WantedBy =oletus.kohde

[Unit]-osiossa Kuvaus direktiivi sisältää yksinkertaisesti palvelun nimen. Huomaa, että se ei saa olla yli 80 merkkiä.

[Palvelu]-osio sisältää kolme tärkeää ohjetta. Ensinnäkin, Tyyppi ; mikä on yksinkertainen , sitten ExecStart joka sisältää mukautetun komentosarjamme suoritettavan tiedoston. Palvelu käynnistyy uudelleen vain vian ilmetessä.

[Asenna]-osio sisältää WantedBy direktiivi, joka on default.target , mikä tarkoittaa, että palvelu otetaan käyttöön järjestelmän tilassa, kun se saavutetaan oletusajon tasolle, joka on tavallisesti multi-user.target tai graphical.target.

Tallenna nyt tiedosto kansioon ~/.config/systemd/user hakemisto millä tahansa nimellä; minä nimeän sen myservice.service .

Normaalin käyttäjäpalvelun hallinta

Normaalin käyttäjäpalvelun hallintaan käytetään systemctl-komentoa -käyttäjä lippu. The -käyttäjä lippu tarkoittaa, että käyttäjä ottaa yhteyttä palvelupäällikköön järjestelmän sijaan.

Kun olet luonut käyttäjäkohtaisen palvelutiedoston, ensimmäinen tärkeä vaihe on ladata systemd-määritystiedostot uudelleen.

systemctl --käyttäjä daemon-reload

Tämä ottaa muutokset käyttöön.

Jos haluat tietää, onko palvelu käynnissä vai ei, käytä systemctl-komentoa -käyttäjä lippu ja vaihtoehto.

systemctl --käyttäjä Tila [ palvelun nimi ]

Muut komennot normaalin käyttäjäpalvelun hallitsemiseksi on mainittu alla:

systemctl --käyttäjä alkaa [ palvelun nimi ]

systemctl --käyttäjä ota käyttöön [ palvelun nimi ]

systemctl --käyttäjä lopettaa [ palvelun nimi ]

systemctl --käyttäjä Poista käytöstä [ palvelun nimi ]

systemctl --käyttäjä uudelleenkäynnistää [ palvelun nimi ]

Normaalin käyttäjäpalvelun luominen järjestelmänvalvojan käyttöoikeuksilla

Käyttäjän luomia palveluita on monia, mutta niiden suorittamiseen tarvitaan järjestelmänvalvojan lupa. Tällaisia ​​palveluita voidaan luoda lisäämällä a Käyttäjä ohje [Palvelu]-osioon.

The Käyttäjä direktiiviä voidaan käyttää mainitsemaan sen käyttäjän nimi, jonka käyttöoikeudet palvelun suorittamiseen tarvitaan, kuten esim järjestelmänvalvoja . Joten jos tavallinen käyttäjä haluaa luoda palvelun, joka vaatii järjestelmänvalvojan oikeudet, lisää yksinkertaisesti User=admin [Palvelu]-osiossa tekee työn. Tämä palvelu pysyy kuitenkin aktiivisena niin kauan kuin järjestelmänvalvoja on aktiivinen. Huomaa, että järjestelmänvalvoja ei voi suoraan hallita tätä palvelua.

Johtopäätös

Tavallinen käyttäjä voi myös luoda järjestelmäpalvelun, mutta se on sijoitettava ~/.config/systemd/user hakemistosta. Tämä palvelu toimii niin kauan kuin sen luonut käyttäjä on kirjautunut sisään. Näitä palveluita hallitaan myös systemctl-komennolla, mutta -käyttäjä lippu. Joka kertoo systemdille, että palvelua kutsuu käyttäjä, ei järjestelmä. Tässä oppaassa loin mukautetun normaalin käyttäjäpalvelun ja mainitsin systemctl-komennot sen hallitsemiseksi. Lisäksi korostin myös menetelmää järjestelmänvalvojan oikeuksia vaativan palvelun luomiseksi.