Démarrage d'un service automatique avec system.d sur Linux Debian 8

Démarrage d'un service automatique avec system.d.

Publié le 14/02/2017

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.