Ich bin immer fasziniert von den Dingen hinter den Kulissen, wenn ich. Durch das Drücken des Ein- / Ausschalters auf einem bare Metall oder beim Starten einer virtuellen Maschine setzen Sie eine Reihe von Ereignissen in Bewegung, die zu einem voll funktionsfähigen System führen-manchmal in weniger als einer Minute. Gleiches gilt für Sie, wenn Sie das System abmelden und / oder herunterladen.
Was dies interessanter und unterhaltsamer macht, ist die Tatsache, dass Sie das Betriebssystem beim Stiefeln und beim Anmeldung oder Anmeldung bestimmte Aktionen ausführen können.
In diesem distro-agnostischen Artikel werden wir die traditionellen Methoden zur Erreichung dieser Ziele unter Linux diskutieren.
Notiz: Wir werden die Verwendung von annehmenVerprügelnals Hauptschale für Anmeldungs- und Abmeldereignisse. Wenn Sie zufällig einen anderen verwenden, können einige dieser Methoden möglicherweise funktionieren oder nicht. Im Zweifelsfall finden Sie in der Dokumentation Ihrer Shell.
Ausführen von Linux -Skripten während des Neustarts oder des Starts
Während des Starts gibt es zwei traditionelle Methoden, um einen Befehl auszuführen oder Skripte auszuführen:
Methode Nr. 1 - Verwenden Sie einen Cron -Job
Neben dem üblichen Format (Minute / Stunde / Tag des Monats / Monat / Tag der Woche), das häufig verwendet wird, um einen Zeitplan anzuzeigen,erlaubt auch die Verwendung von@reboot
. Diese Richtlinie, gefolgt von dem absoluten Pfad zum Skript, führt dazu, dass sie beim Stiefeln der Maschine ausgeführt wird.
Dieser Ansatz gibt jedoch zwei Vorbehalte:
- A)Der Cron -Daemon muss ausgeführt werden (was unter normalen Umständen der Fall ist) und
- B)Das Skript oder die Crontab -Datei muss die Umgebungsvariablen (falls vorhanden) enthalten, die benötigt werden (finden Sie in diesem Stackoverflow -Thread für weitere Details).
Methode Nr. 2 - Verwendung /etc/rc.d/rc.local
Diese Methode gilt auch für systemd-basierte Verteilungen. Damit diese Methode funktioniert/etc/rc.d/rc.local
wie folgt:
# chmod +x /etc/rc.d/rc.local
und fügen Sie Ihr Skript unten in der Datei hinzu.
Das folgende Bild zeigt, wie Sie zwei Beispielskripte ausführen (/home/gacanepa/script1.sh
Und/home/gacanepa/script2.sh
) mit aCronJob undrc.localjeweils und ihre jeweiligen Ergebnisse.
script1.sh:
#!/bin/bash DATE=$(date +'%F %H:%M:%S') DIR=/home/gacanepa echo "Current date and time: $DATE" > $DIR/file1.txt
script2.sh:
#!/bin/bash SITE="Tecmint.com" DIR=/home/gacanepa echo "$SITE rocks... add us to your bookmarks." > $DIR/file2.txt

Beachten Sie, dass beide Skripte zuvor ausführte Berechtigungen erteilt werden müssen:
$ chmod +x /home/gacanepa/script1.sh $ chmod +x /home/gacanepa/script2.sh
Ausführen von Linux -Skripten bei Anmeldung und Abmelden
Verwenden Sie zum Ausführen eines Skripts bei Anmeldung oder Anmeldung~.bash_profile
Und~.bash_logout
, jeweils. Höchstwahrscheinlich müssen Sie die letztere Datei manuell erstellen. Lassen Sie einfach eine Zeile fallen, die Ihr Skript am Ende jeder Datei auf die gleiche Weise wie zuvor aufruft, und Sie sind bereit zu gehen.
Zusammenfassung
In diesem Artikel haben wir erklärt, wie man Skript bei Neustart, Anmeldung und Abmelden ausführt. Wenn Sie sich an andere Methoden vorstellen können, die wir hier hätten aufnehmen können, können Sie das folgende Kommentarformular verwenden, um sie zu verweisen. Wir freuen uns darauf, von Ihnen zu hören!