Eine der fantastischen Funktionen von Linux-Systemen ist die Möglichkeit, sie nach Ihren Wünschen zu optimieren und zu konfigurieren. Das Befehlszeilendienstprogramm, allgemein als Terminal bezeichnet, ermöglicht es Benutzern, Befehle an den Kernel zu übergeben und wichtige Aufgaben auszuführen. Es ist eine der vielen Funktionen, die den Unterschied zwischen Linux und anderen Betriebssystemen hervorheben.
In diesem Beitrag werden wir eine der leistungsstarken Funktionen von Linux ausnutzen: die Fähigkeit, Skripte / Befehle und Anwendungen beim Start automatisch auszuführen. Dieser Prozess wird durchgeführt, um mehrere Dinge zu erreichen. Es kann von lustigen und unkomplizierten Aufgaben wie dem Ändern des Hintergrundbilds bis hin zu komplizierten Dingen wie dem Sichern von Daten oder dem Verschlüsseln von Dateien reichen.
Ausführen von Linux-Skripten beim Start
Schauen wir uns zunächst die verschiedenen Methoden an, mit denen wir Linux-Startskripte und -befehle automatisieren können.
Methode 1: Verwenden Sie die GUI-App ‚Startup Applications‘
Die meisten Methoden, die wir uns ansehen werden, erfordern die Befehlszeile. GNOME-basierte Distributionen verfügen jedoch über ein einfaches grafisches Dienstprogramm, das Sie verwenden können. Die ‚Startup-Anwendungen. Es ist vorinstalliert und ein zuverlässiges Tool für Benutzer, die sich am Terminal nicht gerne die Hände schmutzig machen.
1. Starten Sie ‚Startup Applications‘ aus dem Menü Anwendungen.
2. Im Hauptfenster ‚Startup Applications‘ sehen Sie rechts drei Optionen: Hinzufügen, Entfernen und Bearbeiten. Um unser erstes automatisiertes Skript zu erstellen, klicken Sie auf die Schaltfläche ‚Hinzufügen‘.
3. Ein Popup-Fenster wird geöffnet. Geben Sie den Namen Ihres Startskripts oder Programms ein. Geben Sie im Abschnitt Befehl den Befehl ein, den Sie ausführen möchten – sagen Sie ‘sudo mkdir /home/tuts/Desktop/My-Test-Script. Alternativ können Sie den vollständigen Pfad zu Ihrem Bash-Skript oder ausführbaren Systembefehl in die verschiedenen ‚bin‘-Verzeichnisse eingeben.
Der obige Befehl gibt mir immer eine Benachrichtigung auf meinem Bildschirm, um mein System nach jedem Start zu aktualisieren. Das ist nur ein einfaches Beispiel. Sie können erweiterte Bash-Skripte schreiben, um verschiedene Aufgaben auszuführen. Wenn Sie gerade erst mit Bash-Scripting beginnen, sehen Sie sich hier einige Beispiele für Bash For Loop an .
Methode 2: Cron-Job verwenden
Cron ist ein Linux-Daemon, der vom Benutzer bearbeitete Aufgaben wie vom Benutzer angegeben ausführt. Diese geplanten Aufgaben werden in die Crontab-Datei geschrieben. Es teilt dem Cron mit, welche Jobs zu welcher Zeit und unter welchen Ereignissen ausgeführt werden sollen.
Das Grundformat einer Crontab-Datei ist:
.
Für die Ausführung von Skripten beim Start verwenden wir jedoch den Parameter @reboot. Wenn all dies für Sie neu klingt, lesen Sie bitte unseren Artikel über Crontab in Linux Erklärt mit Beispielen.
Um einen neuen Cron-Job hinzuzufügen, führen Sie den folgenden Befehl auf dem Terminal aus.
$ crontab -e
Wenn Sie dies noch nie zuvor getan haben, sehen Sie eine Option zur Auswahl Ihres Standardeditors, wie unten gezeigt. Ich würde Nano empfehlen, da es sehr einfach und unkompliziert ist. In meinem Fall werde ich hier ‘1 eingeben.‘
Wir schreiben ein einfaches Skript, das beim Start ein neues Verzeichnis auf dem Desktop erstellt.
SHELL=/bin/bash@reboot sleep 30 && DISPLAY=:0 My-Test-Directory
Methode 3: Verwenden Sie die /rc.local
Eine andere Methode zum Ausführen von Skripten und Befehlen beim Start ist die Verwendung von /rc.lokale Datei. Führen Sie zunächst den folgenden Befehl auf dem Terminal aus.
sudo nano /etc/rc.local
Dieser Befehl öffnet den rc.lokale Datei im Nano Editor. Wenn es nicht vorhanden wäre, würde es eines schaffen. Geben Sie Ihre Befehle zwischen den #! /bin/bash und exit 0 Zeilen. Sie können hier auch den vollständigen Pfad zu Ihrem Bash-Skript angeben.
#! /bin/bash//path-to-your-bash-scriptexit 0
Jetzt müssen wir die /rc machen.lokale Datei ausführbar. Führen Sie den folgenden Befehl aus:
sudo chmod +x /etc/rc.local
Starten Sie anschließend Ihren PC neu und sehen Sie, wie die Änderungen wirksam werden.
Methode 4: Systemd
Systemd ist eine Softwaresuite, die verschiedene Dienstprogramme zum Verwalten von Systemdiensten und Betriebssystemprozessen enthält. Die Systemd startet Dienste und Prozesse beim Booten.
Wir können die Systemd verwenden, um unsere Skripte und Befehle beim Start zu automatisieren. Lassen Sie uns ein Programm erstellen und automatisieren, das uns benachrichtigt, das System mit Systemd zu aktualisieren.
Um zu beginnen, lassen Sie uns den gewünschten Ordner und die Datei, wo wir unsere Befehle schreiben. Führen Sie die folgenden Befehle aus:
$ mkdir -p ~/.config/systemd/user$ nano ~/.config/systemd/user/update-notifier.service
Nach dem zweiten Befehl öffnet sich der Nano-Editor, fügt die Befehle unten hier.
Description=Reminder to Update SystemPartOf=graphical-session-targetExecStart=bash -c 'sleep 10; notify-send "Please, Update your System Now"Type=oneshotWantedBy=graphical-session.target
Diese Befehle sind ziemlich einfach. Das System sendet die „Update-Erinnerung“ 10 Sekunden nach dem Laden der grafischen Sitzung nach dem Start.
Um sicherzustellen, dass das Skript nach jedem Start geladen wird, müssen wir es ausführbar machen. Führen Sie die folgenden Befehle aus.
$ chmod 644 ~/.config/systemd/user/update-notifier.service$ systemctl --user enable update-notifier.service$ systemctl --user daemon-reload$ reboot
Dies ist eine einfache Möglichkeit, Skripte mit Systemd beim Start zu automatisieren. Die obige Methode führt Skripte aus, für die kein Root-Zugriff erforderlich ist. Wenn Sie ein Skript erstellen möchten, das Root-Zugriff benötigt, erstellen Sie einen Systemd-Dienst im Ordner „/ etc / systemd / system“ anstelle von „~ /.config/systemd/user“ Verzeichnis. Außerdem müssen Sie das im obigen Befehl enthaltene Wort ‚Benutzer‘ weglassen.
Fazit
Dies sind vier Methoden, mit denen Sie Linux-Startskripte und -befehle beim Start automatisch ausführen können. Wenn Sie einfache Skripte erstellen, für deren Ausführung keine erhöhten Berechtigungen erforderlich sind, empfehle ich die Verwendung der GUI-App ‚Startup Application‘ oder eines einfachen Cron-Jobs. Wenn Ihre Skripte Root-Zugriff benötigen, sollten Sie einen Systemd-Dienst erstellen.