Here are the steps to have a program or script start on boot on a linux machine using Systemctl. I’m currently using this start several services on my raspberry pi. DigitalOcean wrote an article that goes into more detail on Systemctl.
- Run this command
sudo nano /etc/systemd/system/YOUR_SERVICE_NAME.service
- Paste in the command below. Press ctrl + x then y to save and exit
Description=GIVE_YOUR_SERVICE_A_DESCRIPTION Wants=network.target After=syslog.target network-online.target [Service] Type=simple ExecStart=YOUR_COMMAND_HERE Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload
Enable the service
sudo systemctl enable YOUR_SERVICE_NAME
- Start the service
sudo systemctl start YOUR_SERVICE_NAME
- Check the status of your service
systemctl status YOUR_SERVICE_NAME
- Reboot your device and the program/script should be running. If it crashes it will attempt to restart
Thanks for reading. Make sure you follow me on Twitter to stay up to date on the progress of my side projects T.LY, Weather Extension, and Link Shortener Extension. If you are interested in the tech I use daily, check out my uses page.