For å slette tjenestefilene er det avgjørende å forstå settet med kataloger som inneholder tjenestefilene.
Tjenestefiler lagres vanligvis i flere spesifikke kataloger, avhengig av formålet og hvem som installerte dem. En liste over kataloger er gitt nedenfor.
/lib/systemd/system | Tjenestefiler fra de nedlastede pakkene |
/etc/systemd/system | Tjenestefiler av systemadministratoren |
~/.config/systemd/users | Tjenestefiler av vanlige brukere |
Så hvis en pakke er lastet ned og gir demon og tjenester, vil disse filene bli lagret i /lib/systemd/system katalog. De /etc/systemd/system katalogen inneholder tjenestefiler opprettet av systemadministratorer, og bare sudo-brukere kan endre dem. Samtidig som ~/.config/systemd/users katalogen inneholder tjenestefiler opprettet av vanlige brukere.
Hvordan få tilgang til tjenestefilen
Det første trinnet for å slette en tjenestefil er å finne den nøyaktige banen til den. For å finne stien, bruk systemctl-status kommando med tjenestenavnet.
systemctl-status [ SERVICE-NAVN ]For å finne tjenestenavnet kan du liste opp alle de kjørende tjenestene.
systemctl list-unit-filer --type =tjeneste --stat =løperHvis du vil vise alle tjenestene, bruk systemctl-kommandoen med -type og -stat alternativer.
systemctl list-unit-filerFor eksempel for å finne enhetsbanen til minservice.service , vil jeg utføre statuskommandoen.
systemctl status myservice.serviceUtdataene viser banen til enhetsfilen i Lastet seksjon.
Nå som vi har fått banen til tjenesten, skal vi fortsette å slette den i det påfølgende trinnet.
Advarsel: Før du sletter tjenestefilene fra systemet, er det avgjørende å ha en fullstendig forståelse av systemtjenestefilene og deres betydning for systemet. Sletting av en viktig tjenestefil fra systemet kan forårsake irreversibel skade.
Slik sletter du tjenestefilen
For å slette tjenesten på Linux, systemctl og rm kommandolinjeverktøy vil bli brukt. Bruk systemctl for å stoppe og deaktivere tjenesten, og bruk deretter rm for å fjerne tjenestefilene fra den respektive katalogen.
For å slette tjenestefilen, følg kommandosekvensen gitt nedenfor.
sudo systemctl stoppe SERVICE-NAMEsudo systemctl deaktiver SERVICE-NAME
sudo rm / lib / systemd / system / SERVICE-NAVN #Tjeneste fra den nedlastede pakken
sudo rm / etc / systemd / system / SERVICE-NAVN #Tjeneste av administratoren
sudo rm ~ / .config / systemd / brukere / SERVICE-NAVN #Tjeneste av den vanlige brukeren
sudo systemctl daemon-reload
sudo systemctl tilbakestilling mislyktes
For det første anbefales det å stoppe tjenesten for å sikre at den ikke kjører under fjerning, men å deaktivere den vil også forhindre at den starter igjen. Da må den deaktiveres, noe som hindrer tjenesten i å starte automatisk; Deaktivering av tjenesten fjerner også de symbolske koblingene som er opprettet i .ønsker/ eller . krever/ kataloger. Etter det fjerner du tjenestefilene ved hjelp av rm kommando fra den respektive katalogen.
Last inn systemd-konfigurasjonene på nytt ved å bruke daemon-reload og utføre tilbakestilling mislyktes kommando. Kommandoen reset-failed tilbakestiller alle tjenestene med en mislykket tilstand.
Eksempel
I dette eksemplet, la oss slette en tjeneste opprettet av en systemadministrator. Tjenestens navn er minservice.service og er plassert i /etc/systemd/system katalog.
Sjekk statusen til tjenesten.
systemctl status myservice.service
Tjenesten kjører; legg merke til banen mot Lastet seksjon og deaktiver tjenesten.
sudo systemctl deaktiver myservice.service
Det vil også fjerne den symbolske lenken fra /etc/systemd/system katalog.
Deretter fjerner du tjenestefilen ved å bruke rm kommando- og tjenestefilbane.
sudo rm / etc / systemd / system / minservice.serviceLast nå systemd-konfigurasjonen på nytt for å bruke endringene.
systemctl daemon-reloadDet er det! Tjenesten er fjernet og er ikke lenger i systemet ditt. Bekreft det ved å sjekke tjenestestatusen.
Konklusjon
Sletting av en tjeneste blir obligatorisk hvis den kjører, selv om den ikke lenger er nødvendig. Den kan forbruke systemressurser hvis den blir stående uten tilsyn. I denne guiden dekket jeg en komplett metode for å slette en tjeneste fra Linux. Identifiser først tjenestenavnet og banen, og deaktiver den deretter. Fjern deretter tjenestefilen fra den respektive katalogen og last inn systemkonfigurasjonene på nytt for å fullføre prosedyren.