After=Die Abhängigkeit ist nur dann wirksam, wenn der Dienst einschließlich After=und der Dienst von After=als Teil Ihres Startvorgangs gestartet werden sollen.
Ex:
a.service
[Unit]
After=b.service
Auf diese Weise, wenn beide a.serviceund b.servicewerden aktiviert , dann systemd wird Auftrag b.servicenach a.service.
Wenn ich nicht Missverständnis, was Sie fragen, wie zu starten , b.servicewenn a.servicestartet , obwohl b.servicenicht aktiviert ist .
Die Richtlinie hierfür ist Wants=oder Requires=unter [Unit].
website.service
[Unit]
Wants=mongodb.service
After=mongodb.service
Der Unterschied zwischen Wants=und Requires=besteht darin, dass Requires=ein Fehler beim Starten dazu b.serviceführt, dass der Start von a.servicefehlschlägt, während mit Wants=, a.serviceselbst wenn er b.servicefehlschlägt. Dies wird auf der Manpage von.unit ausführlich erläutert .