Systemd run on startup
Using Systemd allows you to run any executable or script when the system starts. This can be useful when you don't want to re-run your Crow application every single time you restart your server.
Writing the Service Unit File¶
In order to have Systemd recognize your application, you need to create a .service
file that explains how Systemd should handle your program.
To create a service file, you need to go to /etc/systemd/system
and create an empty text file with the extension .service
, the file name can be anything.
Once the file is created, open it using your favorite text editor and add the following:
[Unit]
Description=My revolutionary Crow application
Wants=network.target
After=syslog.target network-online.target
[Service]
Type=simple
ExecStart=/absolute/path/to/your/executable
Restart=on-failure
RestartSec=10
KillMode=process
[Install]
WantedBy=multi-user.target
You will then need to give the correct permission, this can be done by using the following command (a sudo
maybe required):
chmod 640 /etc/systemd/system/crowthing.service
And that's it! You can now use your systemctl
controls to enable
, start
, stop
, or disable
your Crow application.
If you're not familiar with Systemd, systemctl enable crowthing.service
will allow your Crow application to run at startup, start
will start it, and the rest is simple.