Création d'un service
On souhaite démarrer un exécutable automatiquement lors du démarrage du système. Pour ce faire on va créer un service qui va être pris en charge par le gestionnaire de services system.d. Et on va paramétrer ce dernier afin qu'il démarre et redémarre automatiquement.
sudo mkdir /usr/lib/systemd/system
sudo nano /usr/lib/systemd/system/SERVICE_NAME.service
Dans le fichier de définition de service, on va lier le service à l'exécutable à l'aide de son chemin, lui donner un nom, attribuer un utilisateur et de passer le paramètre "Restart" à "always"
[Unit]
Description=SERVICE_NAME
[Service]
User=USER
Group=GROUP
ExecStart=/path/to/executable
Restart=always
StandardOutput=null
# Connects standard error to journal
StandardError=journal
[Install]
WantedBy=multi-user.target
Redémarrage de system.d et activation du service :
sudo systemctl daemon-reload
sudo systemctl enable SERVICE_NAME.service
Démarrage du service :
sudo systemctl start SERVICE_NAME.service
Vérification du redémarrage automatique :
sudo reboot
On constate que le service à bien démarré. On vérifie maintenant que le service redémarre après avoir été quitté.
ps -ef | grep SERVICE_NAME.service
Cela va nous retourner le process désigné avec son PID.
sudo kill -9 PROCESS_NUMBER
On va de nouveau constater que notre service redémarre automatiquement.