Beispiel zum Einrichten eines Linux-Systems zur automatischen Ausführung eines Skripts beim Start

Beispiel zum Einrichten eines Linux-Systems zur automatischen Ausführung eines Skripts beim Start

Vorwort

Hallo zusammen, ich bin Liang Xu.

Bei der Arbeit besteht häufig die Anforderung, nach dem Systemstart automatisch ein Skript oder einen Dienst zu starten. Unter Windows gibt es viele Möglichkeiten, den Start einzurichten, aber wie machen wir das im Linux-System?

Es ist auch möglich, den Start unter Linux festzulegen, aber wir müssen möglicherweise einige Befehle eingeben (möglicherweise gibt es auch eine Einstellungsmethode in der UI-Schnittstelle, aber ich kenne mich damit nicht aus, ich spiele lieber mit Befehlen). Nachfolgend stellen wir drei einfache, aber praktikable Methoden für die Starteinstellungen vor.

Methode 1: Ändern Sie die Datei /etc/rc.d/rc.local

Die Datei /etc/rc.d/rc.local wird ausgeführt, nachdem alle Dienste des Linux-Systems gestartet wurden. Wenn Sie also möchten, dass nach dem Booten Ihr eigenes Skript ausgeführt wird, können Sie dieser Datei Ihren eigenen Skriptpfad hinzufügen.

Sie müssen jedoch zunächst sicherstellen, dass Sie über die Berechtigung zum Ausführen dieser Datei verfügen.

$ chmod +x /etc/rc.d/rc.local

Zu Demonstrationszwecken haben wir ein Skript erstellt, das bei Ausführung eine Datei mit bestimmten Informationen in das Home-Verzeichnis schreibt.

$ vim auto_run_script.sh

#!/bin/bash
Datum >> /home/alvin/output.txt
Hostname >> /home/alvin/output.txt

Nach dem Speichern und Beenden erteilen Sie ihm Ausführungsberechtigungen:

$ chmod +x auto_run_script.sh

Dann fügen wir das Skript der letzten Zeile der Datei /etc/rc.d/rc.local hinzu:

$ vim /etc/rc.d/rc.local

/home/alvin/auto_run_script.sh

Als nächstes können wir den Effekt ausprobieren. Starten Sie einfach das System neu:

$ sudo Neustart

Nach dem Neustart sehen Sie die Ergebnisse der Skriptausführung im Home-Verzeichnis.

Methode 2: Verwenden von crontab

Wie wir alle wissen, ist crontab eine geplante Aufgabe unter Linux. Wenn die von uns festgelegte Zeit erreicht ist, kann sie automatisch die Ausführung bestimmter Skripts auslösen.

Wir können die geplante Aufgabenzeit selbst festlegen und dann das entsprechende Skript schreiben. Es gibt jedoch eine spezielle Aufgabe namens @reboot. Aus der wörtlichen Bedeutung können wir erkennen, dass diese Aufgabe darin besteht, nach dem Neustart des Systems automatisch ein Skript auszuführen.

Also, welches Skript wird ausgeführt? Wie richten wir dieses Skript ein? Wir können es über crontab -e festlegen.

$ crontab -e

@reboot /home/alvin/auto_run_script.sh

Dann einfach neu starten. Der Laufeffekt ist dem oben beschriebenen ähnlich.

Methode 3: Verwenden des systemd-Dienstes

Die beiden oben beschriebenen Methoden können auf jedem Linux-System verwendet werden. Diese Methode ist jedoch nur auf systemd-Systeme anwendbar. Wie kann man erkennen, ob es sich um ein systemd-System handelt? Es ist ganz einfach. Führen Sie einfach den Befehl ps aux aus, um zu sehen, ob der Prozess mit PID 1 systemd ist.

Um dies zu erreichen, müssen wir einen systemd-Startdienst erstellen und ihn im Verzeichnis /etc/systemd/system/ platzieren.

Der von uns erstellte systemd-Startdienst ist wie folgt. Bitte beachten Sie, dass das Suffix .service statt .sh ist.

$ vim auto_run_script.service

[Einheit]
Beschreibung=Beim Start ein benutzerdefiniertes Skript ausführen
Nach=Standard.Ziel

[Service]
ExecStart=/home/alvin/auto_run_script.sh

[Installieren]
Gesucht von = Standard.Ziel

Aus dem Inhalt des Dienstes können wir erkennen, dass wir letztendlich das Skript /home/alvin/auto_run_script.sh aufrufen werden.

Dann platzieren wir dieses Skript im Verzeichnis /etc/systemd/systerm/ und führen dann die folgenden beiden Befehle aus, um die systemd-Konfigurationsdatei zu aktualisieren und den Dienst zu starten.

$ systemctl daemon-neu laden
$ systemctl aktiviere auto_run_script.service

Nachdem alles fertig ist, können wir das System neu starten.

$ Neustart

Zusammenfassen

Dies ist das Ende dieses Artikels über das Einrichten eines Linux-Systems, um beim Start automatisch Skripte auszuführen. Weitere relevante Linux-Startskripte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Drei Möglichkeiten, den automatischen Start von Linux-Diensten einzurichten
  • So richten Sie Oracle so ein, dass es beim Booten unter Linux automatisch gestartet wird
  • Oracle-Startskript unter Linux und dessen Start
  • Starten und Stoppen von Oracle-Diensten und automatischer Start des Bootvorgangs unter Linux
  • So richten Sie den Redis-Start in Linux ein
  • Fügen Sie Linux eine Startmethode hinzu (Dienst/Skript)
  • Schritte zum Starten des Nodemanagers beim Linux-Boot
  • Redis-Passworteinstellung und Autostart unter Linux
  • Detaillierte Erklärung des Linux-Bootvorgangs
  • So starten Sie den Redis-Dienst automatisch, wenn Linux hochfährt

<<:  Vue implementiert Paging-Funktion

>>:  Ein kurzes Verständnis des Unterschieds zwischen MySQL Union All und Union

Artikel empfehlen

Zusammenfassung der MySQL InnoDB-Sperren

Inhaltsverzeichnis 1. Gemeinsam genutzte und exkl...

Details zur Bündelung statischer Ressourcen ohne JavaScript

Inhaltsverzeichnis 1. Benutzerdefinierter Import ...

So verwenden Sie SVG-Symbole in WeChat-Applets

SVG wurde in den letzten Jahren aufgrund seiner v...

Detaillierte Erklärung der nmcli-Verwendung in CentOS8

Allgemeine nmcli-Befehle basierend auf RHEL8/Cent...

CSS implementiert fünf gängige 2D-Transformationen

2D-Transformationen in CSS ermöglichen es uns, ei...

js zur Implementierung eines einfachen Bullet-Screen-Systems

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

Das neueste Installations-Tutorial für virtuelle Maschinen VMware 14

Zuerst gebe ich Ihnen den Aktivierungscode für VM...

Eine kurze Diskussion über das Implementierungsprinzip von Webpack4-Plugins

Inhaltsverzeichnis Vorwort wissen Übung macht den...

MySql 8.0.11 Installations- und Konfigurationstutorial

Offizielle Website-Adresse: https://dev.mysql.com...

Detaillierte Erklärung zum Abrufen der IP-Adresse eines Docker-Containers

1. Nach dem Betreten des Containers Katze /etc/ho...

Beispielcode für die Batchbereitstellung von Nginx mit Ansible

1.1 Kopieren Sie das Nginx-Installationspaket und...

Docker installiert MySQL und löst das chinesische verstümmelte Problem

Inhaltsverzeichnis 1. Ziehen Sie das MySQL-Image ...

Analyse und Lösung des abnormalen Problems beim Laden von JAR in Tomcat

Beschreibung des Phänomens: Das Projekt verwendet...