Serviceverwaltung der Quellpaketinstallation unter Linux

Serviceverwaltung der Quellpaketinstallation unter Linux

1. Startverwaltung des Quellpaketdienstes

# Suchen Sie das Startskript des Dienstes über den Installationspfad des Quellpakets.
# Das heißt, holen Sie sich den absoluten Pfad des Startskripts des Dienstes,
# Fügen Sie abschließend die Startoptionen hinzu.
[root@localhost ~]# /usr/local/apache2/bin/apachectl start|stoplrestart|...

Beachten:

Beim Installieren von Diensten mithilfe von Quellpaketen sind die Startskripte für jeden Dienst unterschiedlich.

Wie erfahren wir den Namen des Startskripts eines Dienstes?

Im offiziellen Installationsdokument wird Ihnen der Name des Startskripts für den Dienst klar mitgeteilt.

Beispiel zum Starten des Dienstes:

veranschaulichen:

Die Fehlermeldung besagt, dass der Hostname localhost.localdomain nicht erkannt wird, es jedoch kein Problem beim Starten des Apache-Dienstes gibt.

Überprüfen Sie, ob der apache Dienst aktiviert ist, indem Sie den Befehl ps aux | grep httpd ausführen.

Wie in der folgenden Abbildung dargestellt:

2. Selbststartverwaltung des Quellpaketdienstes

Durch Konfigurieren der Konfigurationsdatei /etc/rc.d/rc.local können Sie die Selbststartverwaltung von Diensten implementieren, die über Quellpakete installiert wurden.

Diese Methode ist universell und kann unabhängig davon verwendet werden, ob der Dienst mit einem Quellpaket oder einem RPM-Paket installiert wird. Entscheidend ist, ob Sie den Dienststartbefehl für das Quellpaket oder den Dienststartbefehl für das RPM-Paket in die Konfigurationsdatei /etc/rc.d/rc.local schreiben.

Daher wird empfohlen, Konfigurationsdateien zu verwenden, um Dienste in Linux-Systemen auf universelle und einheitliche Weise zu verwalten.

Beispiel:

# Konfigurieren Sie die Konfigurationsdatei /etc/rc.d/rc.local [root@localhost ~]# vim /etc/rc.d/rc.local

# Ändern Sie den Inhalt der Startdatei #!/bin/sh
#
# Dieses Skript wird *nach* allen anderen Init-Skripten ausgeführt.
# Sie können hier Ihre eigenen Initialisierungsmaterialien einfügen, wenn Sie nicht
# möchte die komplette Initialisierung im Sys-V-Stil durchführen.

berühren Sie /var/lock/subsys/local
/usr/local/apache2/bin/apachectl start

3. Sorgen Sie dafür, dass der Quellpaketdienst vom Dienstverwaltungsbefehl erkannt wird

Als Nächstes führen wir ein Experiment durch, um den über das Quellpaket installierten apche -Dienst mit dem über das RPM-Paket installierten apache Dienst identisch zu machen, der an service , chkconfig und ntsysv erkannt werden kann.

Das Problem, das wir lösen möchten, ist folgendes:

(1) Ermöglichen Sie die Verwaltung und den Start von über Quellpakete installierten Diensten über den Dienstbefehl

service Servicebefehl durchsucht tatsächlich nur das Verzeichnis /etc/rc.d/init.d/ nach einem Startskript für den Dienst. Wir müssen daher nur einen Softlink erstellen und das Startskript des Quellpakets mit dem Verzeichnis /etc/rc.d/init.d/ verknüpfen, und es kann vom service verwaltet werden.

# Erstellen Sie einen Softlink zum Startskript des über das Quellpaket installierten Dienstes im Verzeichnis /etc/rc.d/init.d/ [root@localhost ~]# ln -s /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/apachectl

Überprüfen Sie den Inhalt von /etc/rc.d/init.d/ , wie in der folgenden Abbildung gezeigt:

Führen Sie service apachectl restart aus, um den apche -Dienst zu starten.

Es ist ersichtlich, dass apche -Dienst über den service gestartet werden kann und kein nicht erkannter Dienstfehler gemeldet wird.

(2) Ermöglichen Sie die automatische Verwaltung und den Start von Diensten, die über Quellpakete installiert wurden, durch den Befehl chkconfig

Im Anschluss an den vorherigen Schritt müssen Sie die Startskripte der über das Quellpaket installierten Dienste konfigurieren, die per Softlink mit dem Verzeichnis /etc/rc.d/init.d/ verknüpft sind.

# Bearbeiten Sie das Startskript des Quellpakets im Verzeichnis /etc/rc.d/init.d/# (Beachten Sie, dass diese Datei ein Softlink ist, das Startskript des Quellpakets wird also noch geändert)
[root@localhost ~]# vim /etc/rc.d/init.d/apachectl

# Fügen Sie am Anfang folgenden Inhalt hinzu #!/bin/sh
# Inhalt hinzufügen-1
# Geben Sie an, dass das httpd-Skript mit dem Befehl chkconfig verwaltet werden kann. # Das Format ist: chkconfig: Ausführungsebene Startreihenfolge Herunterfahrreihenfolge # Hier legen wir fest, dass Apache auf den Ebenen 3 und 5 mit dem Befehl chkconfig verwaltet wird. Die Startreihenfolge ist S86 und die Herunterfahrreihenfolge ist K76.
# Hinweis: (Legen Sie Ihre eigene Reihenfolge fest, damit diese nicht mit der Reihenfolge vorhandener Startprogramme im System in Konflikt gerät.)
# chkconfig:35 86 76
#
# Inhalt hinzufügen-2
# Beschreibung, beliebiger Inhalt# Beschreibung: aaabbbccc

#Die beiden obigen Sätze müssen hinzugefügt werden, um vom Befehl chkconfig erkannt zu werden.

Aktivieren Sie dann chkconfig , um die vom Quellpaket installierten Dienste zu verwalten.

[root@localhost ~]# chkconfig --add apachectl

Kein Fehler zeigt Erfolg an.

Verwenden Sie den Befehl chkconfig , um die selbststartenden Dienste in Linux anzuzeigen.

Wie in der folgenden Abbildung dargestellt:

Anschließend können Sie den Befehl chkconfig verwenden, um den automatischen Startzustand des Dienstes zu aktivieren.

(3) Erlauben Sie dem Befehl ntsysv, über Quellpakete installierte Dienste zu verwalten

Der Befehl ntsysv verwendet tatsächlich denselben Verwaltungsmechanismus wie der Befehl chkconfig . Das heißt, der obige Befehl chkconfig kann vom Quellpaket installierte Dienste verwalten, und der Befehl ntsysv kann auch vom Quellpaket installierte Dienste verwalten.

Führen Sie den Befehl [root@localhost ~]# ntsysv aus und Sie finden den apache Dienst, den wir gerade oben konfiguriert haben, in der grafischen Benutzeroberfläche.

(4) Zusammenfassung

Wenn Sie möchten, dass der Quellpaketdienst vom service erkannt und verwaltet wird, erstellen Sie einfach einen Softlink, um das Startskript mit dem Verzeichnis /etc/rc.d/init.d/ zu verknüpfen.

Damit der Quellpaketdienst vom Befehl chkconfig erkannt wird, müssen Sie nicht nur das Dienststartskript mit dem Verzeichnis /etc/rc.d/init.d/ verknüpfen, sondern auch das Startskript ändern und am Anfang des Startskripts Folgendes hinzufügen:

# chkconfig : Ausführungsebene, Startreihenfolge, Herunterfahrreihenfolge.

# description : Beschreibungsinformationen. Anschließend müssen Sie den Dienst mit der Methode chkconfig --add 服務名zur chkconfig -Befehlsverwaltung hinzufügen.

Das Befehlsformat ist wie folgt:

[root@localhost ~]# chkconfig [Optionen] [Dienstname]

Optionen:
  --add: Fügen Sie den Dienst zur Verwaltung des Befehls chkconfig hinzu.
  --del: Löscht den Dienst aus der Verwaltung des Befehls chkconfig.

# Beispiel:
# Löschen Sie den Apache-Dienst aus der chkconfig-Befehlsverwaltung [root@localhost ~]# chkconfig -del httpd

Nachdem die Konfiguration mit dem Befehl chkconfig abgeschlossen ist, kann der Befehl ntsysv den Dienst auch verwalten.

Hinweis:

Beachten Sie, dass mit Quellpaketen installierte Dienste auf diese Weise gehandhabt werden können, es wird jedoch nicht empfohlen. Bei Diensten, die über Quellcodepakete installiert wurden, starten Sie die Dienste einfach mit den Quellcodepaketen. Bei Diensten, die über RPM-Pakete installiert wurden, starten Sie die Dienste einfach mit den RPM-Paketen. Das ist großartig.

Dies ist das Ende dieses Artikels über die Serviceverwaltung der Quellcodepaketinstallation unter Linux. Weitere relevante Inhalte zur Verwaltung der Linux-Quellcodepaketinstallation finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

<<:  Toolkit: Ein leistungsfähigeres Front-End-Framework als Bootstrap

>>:  Einführung in die Verwendung von exists und except in SQL Server

Artikel empfehlen

Detaillierte Erklärung der Concat-bezogenen Funktionen in MySQL

1. concat()-Funktion Funktion: Mehrere Zeichenfol...

Auf Wiedersehen Docker: So wechseln Sie in 5 Minuten zu Containerd

Docker ist eine sehr beliebte Containertechnologi...

Eine kurze Analyse der Verwendung des HTML-Webpack-Plugins

Wenn Sie zum Starten der Seite das Plugin „html-w...

Ein seltener Fehler und eine Lösung für die vollständige SQL Server-Sicherung

1. Fehlerdetails Als ich einmal manuell eine voll...

Vue implementiert einen einfachen Laufschrifteffekt

In diesem Artikel wird der spezifische Code von V...

Tiefgreifendes Verständnis der Rolle von Vuex

Inhaltsverzeichnis Überblick So teilen Sie Daten ...

Detaillierte grundlegende Operationen an Datentabellen in der MySQL-Datenbank

Inhaltsverzeichnis 1. Zeigen Sie die Tabellen in ...