J'ai une minuterie Aqui exécute toutes les quelques heures un script qui exécute le service B(script avec systemctl startdedans). Ensuite, je voudrais exécuter le service Caprès la Bfin.

Voici ma prestation C:

[Unit]
Description=lorem ipsum
Requires=B.service
After=B.service

[Service]
Type=oneshot
ExecStart=echo

B est également Type=oneshot.

Problème : après l'appel, systemctl start B.servicele Cn'est pas automatiquement lancé. Je n'ai pas de section [Installer] car je ne veux pas qu'ils démarrent au démarrage.

answer

Vous l'avez compris à l'envers. Afterne spécifie pas que le service Cdoit être démarré, voir systemd.unit pour plus d'informations.

Vous voulez quelque chose comme ça comme configuration de service B:

[Unit]
Description=Your service C
Requires=C.service
Before=C.service
...