Root-Prozess beim Booten starten?

Root-Prozess beim Booten starten?

Ich möchte beim Booten meiner Linux-Installation einen Hintergrundprozess als Root starten. Kann ich ihn einfach einem Verzeichnis oder einer Konfigurationsdatei hinzufügen?

Antwort1

Grundsätzlich haben Sie zwei Möglichkeiten:

  1. croneinen Job mit @rebootZeitangabe verwenden ( crontab(1)Details siehe Manpage)

  2. Starten Sie es über das Init-System. Beim BSD/SysV-Init-Stil bedeutet dies, dass irgendwo ein Skript hinzugefügt wird, das im gewünschten Runlevel ausgeführt werden soll. Bei systemd bedeutet dies, dass eine Unit-Datei erstellt und vom gewünschten Ziel angefordert wird.

Die erste Lösung ist besser für Dinge geeignet, die lokal auf einer oder zwei Maschinen ausgeführt werden (da es sich eher um eine Konfigurationssache handelt); die zweite ist für Dienste/Daemons wie Dinge geeignet, die wahrscheinlich auf mehreren Systemen ausgeführt werden – und sollten tatsächlich verpackt werden, um die Wartung zu erleichtern.

Antwort2

Der einfachste Weg, einen Prozess beim Booten als Root auszuführen, besteht darin, ihn von zu starten /etc/rc.local. Bearbeiten Sie diese Datei und fügen Sie eine Zeile wie folgt hinzu:

/path/to/my/daemon &

Dies ist jedoch keine besonders gute Methode, einen Daemon zu starten. Sie haben keine Möglichkeit, ihn bequem zu steuern (prüfen, ob er ausgeführt wird, ihn stoppen, neu starten usw.).

Es gibt mehrere Frameworks zur Steuerung von Daemons. Sie sind an Ihr Init-System gebunden: Sysvinit, Upstart, Systemd haben jeweils ihre eigene Vorgehensweise. Überprüfen Sie, was auf Ihrem System installiert ist (dies variiert zwischen Unix-Varianten und bei Linux hängt es von der Distribution und der Wahl des Administrators ab).

verwandte Informationen