Verwendung des Linux-Befehls chkconfig

Verwendung des Linux-Befehls chkconfig

1. Befehlseinführung

Der Befehl chkconfig wird zum Aktualisieren und Abfragen der Runlevel-Informationen von Systemdiensten verwendet. Es kann abfragen, welche Systemdienste das Betriebssystem auf jeder Ausführungsebene automatisch ausführt, einschließlich verschiedener residenter Dienste wie httpd, sshd, mysqld usw.

Chkconfig legt tatsächlich fest, welche Systemdienste das Betriebssystem in jedem Runlevel ausführt, indem es die symbolischen Links der Dienstskripte in den sieben verschiedenen Runlevelverzeichnissen /etc/rc[0-6].d ändert. Im Gegensatz zu „service“ wird „chkconfig“ nicht verwendet, um einen Dienst sofort zu starten oder zu stoppen.

chkconfig hat fünf Funktionen:

(1) Fügen Sie neue Dienste hinzu, die von chkconfig verwaltet werden sollen.
(2) Löschen Sie den Dienst aus der chkconfig-Verwaltungsdiensteliste.
(3) Listet die aktuellen Startinformationen aller von chkconfig verwalteten Dienste auf.
(4) Ändern Sie die Startinformationen des Dienstes;
(5) Überprüfen Sie den Startstatus eines bestimmten Dienstes.

2. Befehlsformat

chkconfig
service [OPTIONEN] SERVICENAME

chkconfig ohne Optionen oder mit der Option --list zeigt eine Liste aller Dienste und ihrer aktuellen Konfiguration an.

Wenn auf chkconfig nur der Dienstname folgt, wird geprüft, ob der Dienst so konfiguriert ist, dass er im aktuellen Runlevel automatisch gestartet wird. Wenn ja, gibt chkconfig „true“ zurück, andernfalls „false“. Mit der Option –level kann chkconfig die Konfiguration für einen anderen Runlevel als den aktuellen abfragen.

Wenn nach dem Dienstnamen „on“, „off“, „reset“ oder „resetpriorities“ angegeben wird, ändert chkconfig die Startinformationen für den angegebenen Dienst. Die Flags „on“ und „off“ bewirken, dass der Dienst im geänderten Runlevel gestartet bzw. gestoppt wird. Das Reset-Flag setzt den Ein-/Aus-Zustand aller Runlevel eines Dienstes auf die im zugehörigen Init-Skript angegebenen Werte zurück, während das Resetpriorities-Flag die Start-/Stopp-Prioritäten eines Dienstes auf die im Init-Skript angegebenen Werte zurücksetzt. Standardmäßig wirken sich die Optionen „Ein“ und „Aus“ nur auf die Ausführungsebenen 2, 3, 4 und 5 aus, während „Zurücksetzen“ und „Resetpriorities“ alle Ausführungsebenen betreffen. Mit der Option --level können die betroffenen Runlevel angegeben werden.

3. Option Beschreibung

--level STUFEN
	Gibt den Runlevel an, zu dem die Aktion gehören soll. Eine Ziffernfolge von 0 bis 6. Beispielsweise gibt -level 35 die Ausführungsebenen 3 und 5 an.
--keine Weiterleitung
	Wenn das System systemd als Systemstartprozess verwendet, leitet chkconfig den Befehl an systemd weiter. Diese Option deaktiviert die Umleitung zu systemd und funktioniert nur auf symbolischen Links in /etc/rc[0-6].d. Diese Option ist nur wirksam, wenn dem Dienst ein, aus oder kein Befehl übergeben wird (Aktivieren aktivieren) --add SERVICENAME
	Fügen Sie einen neuen Dienst hinzu, den chkconfig verwalten soll --del SERVICENAME
	Dadurch wird der Dienst aus der chkconfig-Verwaltung und allen damit verbundenen symbolischen Links in /etc/rc[0-6].d --override SERVICENAME entfernt.
	Dienstkonfiguration ändern --list [SERVICENAME]
	Listet den Startstatus aller chkconfig bekannten Dienste auf verschiedenen Runleveln auf. Wenn SERVICENAME angegeben ist, wird nur der Startstatus des spezifischen Dienstes aufgelistet.

4. Häufige Beispiele

(1)Alle Systemdienste auflisten.

chkconfig
Hinweis: Diese Ausgabe zeigt nur SysV-Dienste und beinhaltet keine nativen
   systemd-Dienste. SysV-Konfigurationsdaten können durch native
   systemd-Konfiguration.

   Wenn Sie systemd-Dienste auflisten möchten, verwenden Sie „systemctl list-unit-files“.
   Um die für bestimmte Ziele aktivierten Dienste anzuzeigen, verwenden Sie
   „systemctl list-dependencies [Ziel]“.

bootlocal 0:aus 1:aus 2:aus 3:an 4:aus 5:aus 6:aus
irqaffinity 0:aus 1:aus 2:an 3:an 4:an 5:an 6:aus
netconsole 0:aus 1:aus 2:aus 3:aus 4:aus 5:aus 6:aus
Netzwerk 0:aus 1:aus 2:an 3:an 4:an 5:an 6:aus
qemu-ga 0:aus 1:aus 2:an 3:an 4:an 5:an 6:aus
rename_netifs 0:aus 1:aus 2:aus 3:an 4:aus 5:aus 6:aus

(2) Konfigurieren Sie den Apache-Webserver so, dass er bei jedem Systemstart gestartet wird.

chkconfig httpd ein

Wenn Sie einen Dienst erfolgreich mit chkconfig aktivieren, gibt der Befehl keine Bestätigungsmeldung aus.

(3) Stellen Sie das Netzwerk so ein, dass es geschlossen wird, wenn die Betriebsstufe 2, 3, 4 und 5 ist, d. h., es wird nicht gestartet.

chkconfig Netzwerk aus

# oder chkconfig --level 2345 network off

(4) Überprüfen Sie den automatischen Startstatus des Netzwerkdienstes.

chkconfig --list Netzwerk
Hinweis: Diese Ausgabe zeigt nur SysV-Dienste und beinhaltet keine nativen
   systemd-Dienste. SysV-Konfigurationsdaten können durch native
   systemd-Konfiguration.

   Wenn Sie systemd-Dienste auflisten möchten, verwenden Sie „systemctl list-unit-files“.
   Um die für bestimmte Ziele aktivierten Dienste anzuzeigen, verwenden Sie
   „systemctl list-dependencies [Ziel]“.

Netzwerk 0:aus 1:aus 2:aus 3:aus 4:aus 5:aus 6:aus

5. Erweitern Sie Ihr Wissen

5.1 Dienst bei chkconfig registrieren

Für jeden von chkconfig verwalteten Dienst müssen dem entsprechenden Verwaltungsskript in /etc/rc.d/init.d zwei oder mehr Kommentarzeilen hinzugefügt werden. Die erste Zeile teilt chkconfig mit, auf welcher Standard-Ausführungsebene gestartet werden soll und welche Priorität für das Starten und Stoppen gilt. Wenn ein Dienst standardmäßig auf keinem Runlevel gestartet wird, verwenden Sie - anstelle eines Runlevels. Die zweite Zeile beschreibt den Dienst und kann mit \ auskommentiert werden. Beispielsweise die Kommentare in /etc/rc.d/init.d/network:

# chkconfig: 2345 10 90
# Beschreibung: Aktiviert/Deaktiviert alle Netzwerkschnittstellen, die auf \ konfiguriert sind.
# beim Booten starten.

Die erste Zeile gibt an, dass die Ausführungsebenen 2, 3, 4 und 5 sind, die Startpriorität 10 und die Stopppriorität 90 ist. Die zweite und dritte Zeile sind die Beschreibung des Servicenetzwerks.

5.2 7 Linux-System-Ausführungsebenen

Der Runlevel ist die Funktionsebene, auf der das Betriebssystem aktuell ausgeführt wird. Dadurch können einige Programme auf einer Ebene gestartet werden, auf einer anderen jedoch nicht. Linux-Systeme verwenden im Allgemeinen 7 Ebenen.

0: Stoppzustand. Der Standard-Runlevel des Systems kann nicht auf 0 gesetzt werden, da es sonst nicht normal starten kann
1 Einzelbenutzermodus, Root-Rechte, für die Systemwartung, Remote-Login verboten
2 Mehrbenutzermodus ohne Netzwerk
3 Mehrbenutzermodus mit Netzwerk
4 Wird vom System nicht verwendet, reserviert
5 Grafische Oberfläche
6 Das System wird heruntergefahren und normal neu gestartet. Der Standard-Runlevel kann nicht auf 6 gesetzt werden, da sonst kein normaler Start möglich ist.

Der Standard-Runlevel kann in der Datei /etc/inittab angezeigt werden. Die Standard-Anmeldeebene für Linux für den persönlichen Gebrauch ist 5, was bedeutet, dass der Computer beim Einschalten die grafische Benutzeroberfläche aufruft. Die Betriebsebene für die Remote-Anmeldung ist 3, was bedeutet, dass der Computer die interaktive Befehlszeilenschnittstelle aufruft.

Das Prinzip des Laufniveaus:

(1) Im Verzeichnis /etc/rc.d/init.d befinden sich viele Dienstverwaltungsskripte, und jeder Dienst wird als Dienst bezeichnet.
(2) Unter /etc/rc.d gibt es sieben Verzeichnisse mit dem Namen rcN.d, die den sieben Betriebsebenen des Systems entsprechen.
(3) Das Verzeichnis rcN.d enthält einige symbolische Linkdateien, die auf die Service-Skriptdateien im Verzeichnis init.d verweisen. Die Namenskonvention lautet K+nn+Servicename oder S+nn+Servicename, wobei nn eine zweistellige Zahl ist.
(4) Das System wechselt entsprechend der angegebenen Ausführungsebene in das entsprechende Verzeichnis rcN.d und sucht im Verzeichnis in der Reihenfolge der Dateinamen nach Linkdateien:

Bei Dateien, die mit K beginnen, beendet das System den entsprechenden Dienst. Bei Dateien, die mit S beginnen, startet das System den entsprechenden Dienst.

(5) Überprüfen Sie den Runlevel mit: runlevel;
(6) Um andere Runlevel aufzurufen, verwenden Sie: (sudo) init N;
(7) Darüber hinaus dient init 0 zum Herunterfahren des Systems und init 6 zum Neustarten des Systems.

Wenn Sie außerdem Runlevel verwenden, um den Runlevel zu überprüfen, zeigt das Ergebnis den vorherigen Runlevel und den aktuellen Runlevel an. Wenn der vorherige Runlevel N ist, bedeutet dies, dass beim letzten Mal kein Runlevel vorhanden war (möglicherweise wurde er gerade eingeschaltet).

Oben finden Sie detaillierte Informationen zur Verwendung des Linux-Befehls chkconfig. Weitere Informationen zum Linux-Befehl chkconfig finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Implementierungsprinzip und Codebeispiele für die Komprimierungsdatei des Linux-Befehls gzip
  • gzip-Befehl unter Linux
  • Verwendung des Linux-Befehls „userdel“
  • Verwendung des Linux-Datumsbefehls
  • So führen Sie Linux-Befehle im Hintergrund aus
  • Verwendung des Linux-Befehls ls
  • Verwendung des Linux-Lesebefehls
  • Verwendung des Linux-Befehls usermod
  • Verwendung des Linux-Befehls passwd
  • Verwendung des Linux-Befehls ln
  • Linux-Befehl „cut“ erklärt
  • Verwendung des Linux-Befehls gzip

<<:  Vollständige Schritte zum Implementieren des Standort-Punch-Ins mithilfe räumlicher MySQL-Funktionen

>>:  Kennen Sie alle 24 Methoden zur JavaScript-Schleifendurchquerung?

Artikel empfehlen

Detaillierte Erklärung der Datentypen und Schemaoptimierung in MySQL

Ich lerne derzeit etwas über MySQL-Optimierung. D...

Regeln für die Gestaltung des Anmeldeformulars

Ich habe „Patterns for Sign Up & Ramp Up“ vor ...

So erhalten Sie USB-Scannerdaten mit js

In diesem Artikel wird der spezifische Prozess zu...

So kapseln Sie Axios in Vue

Inhaltsverzeichnis 1. Installation 1. Einleitung ...

MySQL-Inspektionsskript (unbedingt lesen)

Wie unten dargestellt: #!/usr/bin/env python3.5 p...

CSS-Spezifikation BEM CSS und OOCSS Beispielcode detaillierte Erklärung

Vorwort Aufgrund der unterschiedlichen Codiergewo...

Einführung in die Überwachung des MySQL MHA-Betriebsstatus

Inhaltsverzeichnis 1. Projektbeschreibung 1.1 Hin...

So verwenden Sie fdisk zum Partitionieren der Festplatte in Linux

Häufig verwendete Befehle für Linux-Partitionen: ...

Zusammenfassung grundlegender SQL-Anweisungen in der MySQL-Datenbank

Dieser Artikel beschreibt anhand von Beispielen d...