Wenn Sie den Dienst nur beim Booten starten / stoppen möchten, legen Sie Ihr Skript in /etc/init.d ab und führen Sie es aus
update-rc.d yourscript defaults
Oder wenn sich das beschwert
update-rc.d yourscript start 20 2
update-rc.d yourscript stop 20 0
update-rc.d yourscript stop 20 1
update-rc.d yourscript stop 20 6
Beide fügen es dem Booten / Herunterfahren hinzu.
Beachten Sie, dass dies bedeutet, dass es als root ausgeführt wird. Sie sollten daher sicherstellen, dass das Skript Benutzer zu Ihrem Benutzer oder einem anderen Benutzer wechselt, unter dem dieses Programm ausgeführt werden soll.
Upstart soll solche Skripte nach Möglichkeit ersetzen. Die Gründe dafür sind ein schnellerer Start und eine klarere Codierung der Informationen, die erforderlich sind, um zu wissen, wann ein Dienst gestartet / gestoppt werden muss. Der schnellere Start wird erreicht, indem nur der Inhalt von / etc / init gelesen werden muss, um loszulegen. Dies ist besonders vorteilhaft, wenn Sie ureadahead zum Startvorgang hinzufügen, da je weniger zufällige winzige Skriptdateien ureadahead zwischenspeichern muss, desto mehr Es kann Zeit für wichtige Dinge wie Bibliotheken und Programme aufwenden, die zum Starten des Systems erforderlich sind.
Ich wette, dass das Skript, das Sie ausführen, einige Dinge tut, um die Umgebung einzurichten, und dann das Programm in einem dämonisierten Modus ausführt. Ihr Startjob sollte versuchen, die Logik des Skripts zu ersetzen und nicht nur das Skript auszuführen.