Wie starte ich ein Programm beim Booten?


7

Ich habe also dieses Programm, das ich manuell als root ausführe:

sudo gammu-smsd -c /etc/gammu-smsdrc -d 

Dies führt dazu, dass das Gammu (Software zum Verwalten von GSM-Modems) ausgeführt und "daemonisiert" wird. Mein Problem ist, dass dieses Programm beim Booten automatisch ausgeführt werden soll.

Ist es in Ordnung, nur die Crontab von root zu bearbeiten und diesen Befehl dort zu speichern? Oder gibt es einen anderen Weg?

(Ich benutze Ubuntu 11.04.)


1
Sie brauchen das sudo wahrscheinlich nicht, wenn Sie es in die Startdateien einfügen, da die meisten Dinge dort von root ausgeführt werden.
Johan

Sie könnten sich zuerst fragen, ob dies vor oder nach der
Anmeldung

1
Es lohnt sich vielleicht, init.d-Skripte für Ihren Daemon zu erstellen. Ihre Anforderungen liegen jedoch ganz bei Ihnen.
Whoami

Ich möchte ausführen, bevor sich ein Benutzer anmeldet. Ich möchte, dass mein Server meine Programme (nicht nur Gammu) ausführt, auch wenn ich während eines Stromausfalls, bei dem der Computer neu startet, nicht in der Nähe bin.
R2b2

Antworten:


7

Wie wäre es mit /etc/rc.local ?

Dies wird zuletzt in der Startsequenz ausgeführt.


sleep 1mvorher hinzufügen gammu-smsd -d. Ich weiß, dass dies nicht empfohlen wird, aber dies ist der einfache Weg, um es zum Laufen zu bringen. Möglicherweise müssen Sie auch nach dem Erstellen des init.d-Skripts suchen
GusDeCooL

2

Sie können hierfür crontab verwenden .
Verwenden Sie crontab -ediese Option, um die crontab des Benutzers zu bearbeiten (Eine Liste der Startskripte, die Benutzer hinzugefügt haben).
Fügen Sie am Ende die folgende Zeile hinzu:

@reboot <command>

Beispiele:

  • @reboot my_script.sh
  • @reboot python my_script.py arg1 arg2

Verwenden schließlich contab -lum sicherzustellen , dass Ihr Skript machen wurde in die Liste aufgenommen.


Command 'contab' not found.
Zwcloud

1
Verwenden Sieapt-get install cron
Jithin Pavithran

0

Hier erfahren Sie, wie Sie ein Startskript hinzufügen, das beim Booten ausgeführt werden soll. Weitere Informationen finden Sie hier .


1
Der Link, den Sie gegeben haben, ist sehr veraltet. Soweit ich weiß, hat sich das Bootverfahren seitdem stark verändert.
Rozcietrzewiacz

0

Darf Ihnen das helfen?

http://www.howtogeek.com/howto/ubuntu/how-to-add-a-program-to-the-ubuntu-startup-list-after-login/


Oder fügen Sie es einfach in die /etc/profile

oder fügen Sie es auf die empfohlene Weise hinzu: http://embraceubuntu.com/2005/09/07/adding-a-startup-script-to-be-run-at-bootup/

Entfernen Sie in der Tat den Sudo! (aber Sie benötigen es, um die Bearbeitung durchzuführen oder den Befehl hinzuzufügen, also ...)


1
es führt das Programm nach dem Login aus, ich hatte gehofft, dass etwas, das vorher ausgeführt wird, oder während das Login-Fenster angezeigt wird, oder ohne sich anmelden zu müssen

Siehe meine Bearbeitung: Fügen Sie es in die systemweite Startdatei ein

Louis: Muss ich entfernen, sudowenn ich dieser Anleitung folge?
R2b2
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.