So führen Sie automatisch das Shell -Skript beim Start -Start auf Systemd Linux aus
- 1989
- 385
- Aileen Dylus
In der folgenden Konfiguration wird ein grundlegendes Beispiel zum Ausführen von Shell -Skript während einer Startzeit unter Systemd Linux erörtert. Es gibt möglicherweise verschiedene Gründe, warum Sie möglicherweise während des Linux -Starts das Shell -Skript ausführen möchten, wie zum Beispiel einen bestimmten benutzerdefinierten Dienst, überprüfen Sie den Speicherplatz, erstellen Sie eine Sicherung usw.
Das folgende Beispiel unten dient als grundlegende Vorlage, die später geändert werden kann, um Ihren spezifischen Anforderungen gerecht zu werden. Im folgenden Beispiel werden wir einen Speicherplatz von a überprüfen /heim/
Verzeichnis während einer Startzeit und schreiben Sie einen Bericht an /Wurzel/
Verzeichnis.
Systemd Service Unit
Zunächst müssen wir ein Systemd Startup -Skript erstellen, z.Scheiben-Space-Check.Service
und stecken Sie es in /etc/systemd/system/
Verzeichnis. Das Beispiel eines solchen Systemd -Start -Skripts finden Sie unten:
[Einheit] nach = mysql.Service [Service] execstart =/usr/local/bin/disk-Space-Check.sh [install] shodenBy = Standard.Ziel
- AFTER: Weist Systemd an, wenn das Skript ausgeführt werden soll. In unserem Fall wird das Skript ausgeführt, nachdem die MySQL -Datenbank begonnen hat. Anderes Beispiel könnte sein
Netzwerk.Ziel
usw. - ExecStart: Dieses Feld bietet einen vollständigen Pfad, das das tatsächliche Skript zum Ausführen ist
- WantyBy: In welchem Boot -Ziel die Systemd -Einheit installiert werden sollte
Das obige ist ein absolutes Minimum, das unsere Systemd -Serviceeinheit enthalten sollte, um unser Skript zur Startzeit auszuführen. Weitere Informationen und Optionen, die Sie verwenden sollten systemd.Service
Handbuch Seite:
$ MAN SYSTEMD.Service
Start -up -Shell -Skript
Als nächstes erstellen wir unser benutzerdefiniertes Shell -Skript, das während des Systemd -Starts ausgeführt werden soll. Der Speicherort und der Skriptname sind bereits von der Service Unit als definiert als /usr/local/bin/disk-Space-Check.Sch
. Der Inhalt des Skripts kann einfach sein wie:
#!/bin/bash Datum>/root/disk_space_report.txt du -sh /home />> /root /disk_space_report.txt
Konfigurieren und installieren
Bevor wir unser System neu starten, müssen wir unser Skript ausführbar machen:
# Chmod 744/usr/local/bin/disk-Space-Check.Sch
Installieren Sie als nächstes die Systemd -Serviceeinheit und aktivieren Sie sie, damit sie zur Startzeit ausgeführt wird:
# Chmod 664/etc/systemd/system/disk-space-check.Service # SystemCTL Dämon-Reload # SystemCTL Aktivieren Sie die Scheibe-Space-Prüfung.Service erstellte Symlink von/etc/systemd/system/Standard.Ziel.will/disk-Space-Check.Service an/etc/systemd/system/disk-Space-Check.Service.
Wenn Sie Ihr Skript testen möchten, bevor Sie den Auslauf neu starten:
# Systemctl Start-Scheibe-Space-Check.Service # cat /root /disk_space_report.TXT Donnerstag 7. Juli 11:30:25 AEST 2016 1.5g /home /
Alles bereit. Nach dem Neustart Ihres Linux -Systems ruft die oben genannte Systemd -Einheit das Shell -Skript auf, das während der Startzeit ausgeführt wird.
Verwandte Linux -Tutorials:
- Dinge zu installieren auf Ubuntu 20.04
- Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
- Eine Einführung in Linux -Automatisierung, Tools und Techniken
- Dinge zu tun nach der Installation Ubuntu 22.04 Jammy Quallen…
- Ubuntu 20.04 Tricks und Dinge, die Sie vielleicht nicht wissen
- Linux -Download
- Dinge zu installieren auf Ubuntu 22.04
- Beste Linux -Distribution für Entwickler
- So drucken Sie den Verzeichnisbaum mit Linux
- Hung Linux System? Wie man zur Befehlszeile entkommt und…
- « So konfigurieren Sie den Samba -Server -Teilen unter Debian 9 Stretch Linux
- So verwenden Sie Spezialberechtigungen mit SetUid, SetGid und Sticky Bits »