Um ein Programm unter Ubuntu in den Autostart aufzunehmen, biete sich Systemd an. Dies lässt sich relativ einfach konfigurieren.
Zuerst biete es sich an ein Bash-Skript unter /usr/local/bin
zu erstellen, dass den genauen Befehl zum start des Programms speichert. Dadurch wird die Syntax in der Konfiguration des Systemd einfacher. Als Skript reicht schon etwas wie:
#!/bin/bash
/path/to/command ...
Danach muss man die Berechtigung erteilen, das Skript auszuführen.
chmod +x skript.sh
Danach legen wir den Systemd Job an. Dieser wir als Datei unter /etc/systemd/system/skript.service
gespeichert. Der Inhalt lautet wie folgt.
[Unit]
After=network.service
[Service]
ExecStart=path/to/script/or/command
Type=forking #Optional
[Install]
WantedBy=default.target
Wenn in dem Skript, dass durch den Service gestartet werden soll, mehrere Programme gestartet werden, die parallel laufen sollen (command &
), muss im [Service]
der Type=forking
ergänzt werden.
Danach muss der Service nur noch aktiviert werden.
Systemctl enable skript.service
Nun startet unser Skript bei jedem Systemstart. Sollte das nicht der Fall sein lässt sich mit Systemctl status skript.service
der Status abfragen und so evtl der Fehler finden.