我写了一个允许创建多个实例的系统服务单元。包装器脚本从通用配置文件中读取实例的配置详细信息,构建要执行的实际命令。到目前为止,这是有效(start,
stop
的,status
)。
但是,当我在配置文件中指定一个无法找到的实例(称为“假实例”)时,我的ExecStart
命令失败(如预期的那样)。然后除了包装器脚本(当然终止)之外没有命令启动。
不幸的是 systemd 然后发疯了:它反复尝试重新启动“假实例”。每个status
命令都会报告一个错误,而且我也无法访问stop
该假实例。所以即使没有任何东西在运行,systemd 也有一些关于那个“假实例”的知识。我怎样才能删除它?
是否有特殊的退出代码使 systemd 立即忘记实例?(我可以同时尝试RestartPreventExitStatus=
)
在设备上尝试“systemctl reset-failed”。