Programma automatisch starten

      Reacties uitgeschakeld voor Programma automatisch starten

Vier gangbare manieren om een programma te starten als de Pi boot

De vier manieren zijn:

crontab, rc.local, autostart en systemd

crontab

Maak een job aan in crontab die begint met @reboot. Bijvoorbeeld:

@reboot python3 /home/pi/stopknop.py &

Let op, er zijn meerdere crontabs: gebruik sudo crontab -e om een job aan te maken in de crontab van root; en crontab -e om een job aan te maken voor de standaard user pi. Dit is vooral handig als je de Pi start in de CLI-modus; grafische programma’s kun je zo niet opstarten.
Meer voorbeelden van crontab vind je hier .

rc.local

Het nadeel is dat taken die je start via rc.local plaats vinden voordat het X windows systeem opstart. Dat betekent, dat je geen toegang hebt tot onderdelen van de GUI.

autostart

Dit gebruik je uitsluitend om programma’s automatisch op te starten nadat LXDE (grafische desktop environment gebruikt door Raspbian) is opgestart. Het is iets gecompliceerder dan rc.local, maar je kunt er grafische programma’s mee starten op de desktop.

systemd

Dit is de nieuwste manier om programma’s automatisch te starten in Linux. Het is ook de meest gecompliceerde manier, maar je kunt er programma’s mee starten voordat LXDE start, het kan wachten totdat bepaalde andere processen (bv netwerk, graphical desktop) zijn opgestart, en het kan je programma gewoon steeds blijven starten totdat het werkt. In dat opzicht is het een betrouwbare manier om services te maken en te beheren die op de achtergrond draaien.

Als niets werkt

Mocht geen van bovengenoemde opties werken, en het systeem boot standaard in de cli, dan rest nog de mogelijkheid om het opstartcommando in de .bashrc te zetten van de betreffende user.
Dit is eigenlijk een ‘hack’, omdat .bashrc bedoeld is om de bash van de betreffende user persoonlijk in te richten. Want in elke console/terminal die je voor deze user vervolgens opent wordt een instantie van hetzelfde programma opnieuw gestart….