Étant donné que le System V est progressivement supprimé, il est très probable qu'il faille apprendre à s'entendre avec SYSTEMD, qui est beaucoup plus puissant. Par exemple, une fonctionnalité utile consiste à redémarrer automatiquement les services qui s'arrêtent d'eux-mêmes. De telles fonctionnalités se trouvent par exemple dans BluePill etc. Avec Systemd, il n'est pas nécessaire d'utiliser un tel chien de garde supplémentaire. Voici quelques informations de base sur la création d'un nouveau service appelé "unité" sous Systemd sous Linux.
Systemd a ses fichiers de configuration dans :/etc/systemd/
Dans cet exemple, je vais créer un fichier de configuration Systemd pour un service simple appelé istatd qui devrait démarrer le démon unique avec la commande :/usr/local/bin/istatd -d
Afin de créer un service que seul root peut exploiter, son nouveau fichier de configuration doit être créé sous la forme :/etc/systemd/system/istatd.service touch /etc/systemd/system/istatd.service
chmod 644 /etc/systemd/system/istatd.service
Contenu : [Unit]
Description=IStad iPhone monitoring service
#
[Service]
Type=forking
ExecStart=/usr/local/bin/istatd -d
ExecStop=/usr/bin/killall istatd
Restart=on-failure
RestartSec=3
#
[Install]
WantedBy=default.target
Ce fichier de configuration pour l'unité istatd démarrera/arrêtera le démon et le redémarrera s'il s'arrête tout seul 3 sec après avoir été détecté par le watchdog de sa disparition de la liste des processus.
Pour activer la nouvelle configuration et lancer le service exécutez :systemctl daemon-reload
service istatd start
Les commandes possibles pour démarrer/arrêter/redémarrer/status et le débogage sont :systemctl {start|stop|restart|status} istatd
OR
service istatd {start|stop|restart|status}
Pour le débogage de Systemd, utilisez la commande :journalctl -xn
Après toute modification apportée à l'un des fichiers de configuration de Systemd, vous devez exécuter la commande :systemctl enable istatd
systemctl daemon-reload
Pour plus d'informations sur le fonctionnement de Systemd et la création de ses fichiers de configuration, consultez :
http://patrakov.blogspot.de/2011/01/writing-systemd-service-files.html
et
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html
Quelques autres commandes utiles :
Supprimer complètement un service : systemctl stop [servicename]
systemctl disable [servicename]
systemctl daemon-reload
systemctl reset-failed