Sådan sletter du en Systemd Service-fil

Sadan Sletter Du En Systemd Service Fil



Mange pakker på Linux kommer med servicefiler, der kører i baggrunden. Ofte slettes servicefilerne ikke, selv efter at den tilknyttede pakke er slettet. Som følge heraf forårsager akkumulering af uønskede tjenester ekstra belastning på systemet. I sådanne tilfælde bliver det bydende nødvendigt at slette unødvendige servicefiler.

For at slette servicefilerne er det afgørende at forstå det sæt af mapper, der indeholder servicefilerne.

Servicefiler gemmes typisk i flere specifikke mapper, afhængigt af deres formål og hvem der har installeret dem. En liste over mapper er givet nedenfor.







/lib/systemd/system Servicefiler fra de downloadede pakker
/etc/systemd/system Servicefiler af systemadministratoren
~/.config/systemd/brugere Servicefiler af normale brugere

Så hvis en pakke downloades og giver dæmoner og tjenester, vil disse filer blive gemt i /lib/systemd/system vejviser. Det /etc/systemd/system biblioteket indeholder servicefiler oprettet af systemadministratorer, og kun sudo-brugere kan ændre dem. Mens ~/.config/systemd/brugere biblioteket indeholder servicefiler oprettet af normale brugere.

Sådan får du adgang til servicefilen

Det første trin i at slette en servicefil er at finde den nøjagtige sti til den. For at finde stien skal du bruge systemctl status kommando med tjenestenavnet.

systemctl status [ SERVICE-NAVN ]

For at finde tjenestenavnet kan du liste alle de kørende tjenester.

systemctl list-unit-filer --type =service --stat =løb

Hvis du vil vise alle tjenesterne, skal du bruge kommandoen systemctl med -type og -stat muligheder.

systemctl list-unit-filer

For eksempel for at finde enhedsstien til minservice.service , vil jeg udføre statuskommandoen.

systemctl status myservice.service

Outputtet viser stien til enhedsfilen i Indlæst afsnit.

Nu hvor vi har opnået stien til tjenesten, vil vi fortsætte med at slette den i det efterfølgende trin.

Advarsel: Før du sletter servicefilerne fra systemet, er det afgørende at have en fuldstændig forståelse af systemservicefilerne og deres betydning for systemet. Sletning af en vigtig servicefil fra systemet kan forårsage uoprettelig skade.

Sådan sletter du servicefilen

For at slette tjenesten på Linux skal du systemctl og rm kommandolinjeværktøjer vil blive brugt. Brug systemctl til at stoppe og deaktivere tjenesten, og brug derefter rm for at fjerne servicefilerne fra den respektive mappe.

For at slette servicefilen skal du følge kommandosekvensen nedenfor.

sudo systemctl stop SERVICE-NAME

sudo systemctl deaktiver SERVICE-NAME

sudo rm / lib / systemd / system / SERVICE-NAVN #Service fra den downloadede pakke

sudo rm / etc / systemd / system / SERVICE-NAVN #Service af administratoren

sudo rm ~ / .config / systemd / brugere / SERVICE-NAVN #Service af den normale bruger

sudo systemctl daemon-genindlæs

sudo systemctl-nulstilling mislykkedes

For det første anbefales det at stoppe tjenesten for at sikre, at den ikke kører under fjernelse, selvom deaktivering af den også forhindrer den i at starte igen. Så skal den deaktiveres, hvilket forhindrer tjenesten i at starte automatisk; Deaktivering af tjenesten fjerner også de symbolske links, der er oprettet i .har lyst/ eller . kræver/ mapper. Fjern derefter servicefilerne ved hjælp af rm kommando fra den respektive mappe.

Genindlæs systemkonfigurationerne vha dæmon-genindlæs og udførelsen nulstilling mislykkedes kommando. Kommandoen reset-failed nulstiller alle tjenester med en mislykket tilstand.

Eksempel

Lad os i dette eksempel slette en tjeneste oprettet af en systemadministrator. Tjenestens navn er minservice.service og placeres i /etc/systemd/system vejviser.

Tjek tjenestens status.

systemctl status myservice.service

Tjenesten kører; bemærk stien mod Indlæst afsnit og deaktivere servicen.

sudo systemctl deaktiver myservice.service

Det vil også fjerne det symbolske link fra /etc/systemd/system vejviser.

Fjern derefter servicefilen ved hjælp af rm kommando- og servicefilsti.

sudo rm / etc / systemd / system / minservice.service

Genindlæs nu systemd-konfigurationen for at anvende ændringerne.

systemctl daemon-genindlæs

Det er det! Tjenesten er fjernet og er ikke længere i dit system. Bekræft det ved at kontrollere servicestatus.

Konklusion

Sletning af en tjeneste bliver obligatorisk, hvis den kører, selvom den ikke længere er nødvendig. Det kan forbruge systemressourcer, hvis det efterlades uden opsyn. I denne vejledning dækkede jeg en komplet metode til at slette en tjeneste fra Linux. Først skal du identificere tjenestens navn og sti og derefter deaktivere den. Fjern derefter servicefilen fra den respektive mappe og genindlæs systemkonfigurationerne for at fuldføre proceduren.