August 2, 2021


Debian – Autostart programs on boot

Apps-gksu-debian-iconFor the Debian system, we have a directory called /etc/init.d/ where the scripts that the init process runs during startup. And shutdown. So If it your own software you want to autostart, consider a exit argument in your runtime file. Or just use killall function.

We have a executable written in Mono, that we called myService. Here is how we will get that to start at boot.
vim /etc/init.d/myService



Here is the file:

#! /bin/sh
# /etc/init.d/myService

# This code will always execute
echo “Trying to start the service”

# Here we start (or stop) depending on the paramter (start/stop)
case “$1” in
echo “Starting myService”
mono /home/myService/runtime/myService.exe
echo “myService is alive”
echo “Stopping mymet-tow”
mono /home/myService/runtime/myService.exe -killme
echo “myService is dead”
echo “Usage: /etc/init.d/myService {start|stop}”
exit 1
exit 0

Before we can use the script to start our service, we need to make it executable.
chmod 755 /etc/init.d/myService

You can now call the script to start and stop the service. But we want it to start up on boot, so we continue. Then we will add the script to the default runlevel.

update-rc.d myService defaults

If you later want to remove it, run
update-rc.d -f myService remove

You can now try to reboot your server and see if it runs.

Happy autostarting!