Com esborrar un fitxer de servei de Systemd

Com Esborrar Un Fitxer De Servei De Systemd



Molts paquets a Linux inclouen fitxers de servei que s'executen en segon pla. Sovint, els fitxers de servei no s'eliminen fins i tot després d'haver eliminat el paquet associat. En conseqüència, l'acumulació de serveis no desitjats provoca una càrrega addicional al sistema. En aquests casos, és imprescindible eliminar els fitxers de servei innecessaris.

Per eliminar els fitxers de servei, és crucial entendre el conjunt de directoris que contenen els fitxers de servei.

Els fitxers de servei s'emmagatzemen normalment en diversos directoris específics, depenent de la seva finalitat i de qui els va instal·lar. A continuació es mostra una llista de directoris.







/lib/systemd/system Fitxers de servei dels paquets descarregats
/etc/systemd/system Fitxers de servei per part de l'administrador del sistema
~/.config/systemd/users Fitxers de servei d'usuaris normals

Per tant, si es baixa un paquet i proporciona dimoni i serveis, aquests fitxers s'emmagatzemaran al fitxer /lib/systemd/system directori. El /etc/systemd/system El directori conté fitxers de servei creats pels administradors del sistema i només els usuaris de sudo els poden modificar. Mentre ~/.config/systemd/users El directori conté fitxers de servei creats per usuaris normals.

Com accedir al fitxer de servei

El primer pas per suprimir un fitxer de servei és trobar-ne el camí exacte. Per trobar el camí, utilitzeu estat systemctl comanda amb el nom del servei.

estat systemctl [ NOM DEL SERVEI ]

Per trobar el nom del servei, podeu llistar tots els serveis en funcionament.

systemctl llista-unitat-fitxers --tipus =servei --estat = córrer

Si voleu llistar tots els serveis, utilitzeu l'ordre systemctl amb -tipus i -estat opcions.

systemctl llista-unitat-fitxers

Per exemple, per trobar el camí de la unitat de el meuservei.servei , executaré l'ordre d'estat.

systemctl status myservice.service

La sortida mostra la ruta del fitxer de la unitat al fitxer Carregat secció.

Ara que hem obtingut la ruta del servei, procedirem a eliminar-lo en el pas següent.

Avís: Abans d'eliminar els fitxers de servei del sistema, és crucial tenir una comprensió completa dels fitxers de servei del sistema i la seva importància per al sistema. L'eliminació d'un fitxer de servei important del sistema pot causar danys irreversibles.

Com esborrar el fitxer de servei

Per eliminar el servei a Linux, el systemctl i rm s'utilitzaran les utilitats de la línia d'ordres. Utilitzeu systemctl per aturar i desactivar el servei, i després feu servir rm per eliminar els fitxers de servei del directori corresponent.

Per suprimir el fitxer de servei, seguiu la seqüència d'ordres que es mostra a continuació.

sudo systemctl atura SERVICE-NAME

sudo systemctl desactiva SERVICE-NAME

sudo rm / lib / systemd / sistema / NOM DEL SERVEI #Servei del paquet descarregat

sudo rm / etc / systemd / sistema / NOM DEL SERVEI #Servei per part de l'administrador

sudo rm ~ / .config / systemd / usuaris / NOM DEL SERVEI #Servei per part de l'usuari normal

sudo systemctl daemon-reload

sudo systemctl reset-fallida

En primer lloc, es recomana aturar el servei per assegurar-se que no s'executa durant l'eliminació, tot i que desactivar-lo també evitarà que es torni a iniciar. Aleshores cal desactivar-lo, cosa que impedeix que el servei s'iniciï automàticament; la desactivació del servei també elimina els enllaços simbòlics creats al .vol/ o . requereix/ directoris. Després d'això, elimineu els fitxers de servei amb el fitxer rm comanda des del directori corresponent.

Torneu a carregar les configuracions de systemd utilitzant dimoni-recàrrega i l'execució no s'ha reiniciat comandament. L'ordre reset-failed restableix tots els serveis amb un estat d'error.

Exemple

En aquest exemple, suprimim un servei creat per un administrador del sistema. El nom del servei és el meuservei.servei i es col·loca a la /etc/systemd/system directori.

Comproveu l'estat del servei.

estat systemctl myservice.service

El servei està en funcionament; nota el camí contra el Carregat secció i desactivar el servei.

sudo systemctl desactiva myservice.service

També eliminarà l'enllaç simbòlic del fitxer /etc/systemd/system directori.

A continuació, elimineu el fitxer de servei amb el fitxer rm ruta del fitxer d'ordres i servei.

sudo rm / etc / systemd / sistema / el meuservei.servei

Ara, torneu a carregar la configuració de systemd per aplicar els canvis.

systemctl daemon-reload

Això és! El servei s'elimina i ja no es troba al vostre sistema. Comproveu-ho comprovant l'estat del servei.

Conclusió

L'eliminació d'un servei esdevé obligatori si s'està executant, encara que ja no sigui necessari. Pot consumir recursos del sistema si es deixa sense vigilància. En aquesta guia, vaig cobrir un mètode complet per eliminar un servei de Linux. Primer, identifiqueu el nom i la ruta del servei i, a continuació, desactiveu-lo. Després d'això, traieu el fitxer de servei del directori respectiu i torneu a carregar les configuracions de systemd per completar el procediment.