{{tag>sysadmin linux systemd service daemon}} ====== systemd : créer un service ====== **systemd gère des unités**. Différents types d'unité existent : service, automount, path, mount, target, timer, wants et socket. Ici on s’intéresse aux unités de type service. Les fichiers unités du système sont présents dans le répertoire ''/usr/lib/systemd/system''. Ils ne doivent pas être directement modifiés. Il existe des méthodes pour les redéfinir. Pour définir un service, créer un fichier avec l'extension ''.service'' dans un des répertoires suivants : * ''/etc/systemd/system/'' : pour un service s’exécutant au démarrage du système ; * ''/etc/systemd/user/'' : pour exécution du service à la connexion de tout utilisateur ; * ''~/.config/systemd/user/'' : pour exécution du service à la connexion d’un utilisateur spécifique. Le fichier unité de type service comporte 3 sections : * ''Unit'' : description du service et définition des prérequis ; * ''Service'' : définit le type de service et ses actions ; * ''Install'' : [Unit] Description= Before= After= ConditionPathExists= [Service] Environment= Type= User= Group= ExecStartPre= ExecStart= ExecStop= ExecStopPost= RemainAfterExit= Restart= RestartSec= [Install] WantedBy= ===== Références ===== * [[https://www.malekal.com/creer-service-linux-systemd/|Créer un service avec systemd (malekal.com)]] * [[https://www.linuxtricks.fr/wiki/systemd-creer-des-services-unite-de-type-service|Créer une unité de type service (linuxtricks.fr)]]