需要任何模板实例

Jod*_*oda 5 templates systemd

是否可以告诉我的单元文件等待模板单元文件的任何实例(未知实例名称)?

像这样:After = template@*.service

例:

我有这个模板文件(template @ .service):

[Unit]
Description=TemplateFile
After=network.target

[Service]
Type=idle
ExecStart=/bin/sh -c '${JBOSS_HOME}/bin/standalone.sh ${JBOSS_START_OPTS}'
ExecStop=/bin/sh -c '${JBOSS_HOME}/bin/jboss-cli.sh ${JBOSS_STOP_OPTS}'

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

我有这个单位文件(other.service):

[Unit]
Description=Other
After=network.target
#Requires=template@[a-zA-Z0-9]*.service

[Service]
Type=idle
Environment=DISPLAY=:0
ExecStart=/usr/bin/gedit
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

我希望other.service单元仅在至少运行1个模板@ .service实例时运行

小智 1

您必须使实例化单元成为自定义目标的一部分。然后在 other.service 中需要该目标。

  • 这只是将问题转移到目标的定义中。如何告诉目标依赖于*任何*实例,例如“Requires=template@*.service”? (3认同)