Mettre en place un nouveau service avec systemd

Les services avec systemd #

Ce logiciel permet entre autre de gérer les différents services sur votre serveur en se chargeant de les démarrer, stopper, recharger, …

Nous aborderons ici la création et la gestion d’un service simple.

Création d’un service #

Il y a plusieurs types de services nous intéresserons aux services simples.

Pour créer un service il faut éditer un fichier <service>.service et y placer le code suivant :

[Unit]
Description=<description du service>

[Service]
Type=simple

User=<username>
Group=<grpname>

#RemainAfterExit=yes
ExecStart=/usr/libexec/iptables.init start
#ExecStop=/usr/libexec/iptables.init stop
Restart=on-failure

[Install]
WantedBy=multi-user.target

Le champ ExecStart correspond à la commande à lancer pour démarrer le service. La ligne RemainAfterExit=yes indique à systemd que le service est toujours considéré comme lancé même si la commande ExecStart est terminée. Le champ ExecStop correspond à la commande à lancer pour stopper le service.

Commandes #

systemctl start <service>
systemctl stop <service>
systemctl restart <service>
systemctl reload <service>
systemctl enable [--now] <service>
systemctl disable <service>
systemctl status <service>