Manchmal mache ich versehentlich eine neue Einheit, und dann muss ich zu / etc / systemd gehen, um nach der Einheit zu suchen und alle zugehörigen Dateien / Skripte / Links / etc. Zu löschen.
Gibt es einen besseren Weg? Wie ein einzelner Befehl, der alles löscht, was mit einem Einheitennamen verbunden ist?
systemd enable <service_name>
.Antworten:
Ich denke, Sie benötigen zwei Befehle, einen zum Trennen der Einheit und einen zum Löschen der Einheitendatei.
Du meinst
systemctl enable ...
. Wie auch immer, vonman systemctl
:Die Symlinks dienen dazu, die Einheit einem Ziel zuzuordnen
rcN.d
. Dies entspricht den Symlinks, die in sysV- Runlevel-Verzeichnissen verwendet werden. 1 Durch Deaktivieren einer Einheit werden diese entfernt, da sie die Ausführung mit einem beliebigen Ziel ermöglichen.Sobald diese verschwunden sind, bleibt nur noch die
.service
Datei übrig, die Sie vermutlich erstellt haben. Löschen / entfernen Sie das und Sie sind fertig.1. Um es klar zu sagen: Sie verwenden sysV nicht. Wenn Ihnen diese Beobachtung nichts bedeutet, machen Sie sich darüber keine Sorgen. Möglicherweise befinden sich
/etc/rcN.d
Verzeichnisse auf Ihrem System. Ignorieren Sie diese.quelle
insserv
sollte diesen Job machen - egal ob sysVinit oder systemD .Referenz: OpenSuSE
Beispiel:
insserv -d nfs
Deaktiviert den Start des NFS- Dienstes.quelle
insserv
eine Möglichkeit zum Löschen einer Einheit in systemd verwendet? Könnten Sie ein Beispiel geben?