是否可以出于测试目的手动执行单个systemd计时器配对的服务单元?


21

我有一个计时器/服务单元集,应在--user条件下每天运行一次。它显示systemctl --user status并记录在日记中,但是命令的一部分失败了。

似乎命令中的某些内容未正确解释。我想使用单元文件来运行该服务,检查日志等以调试问题;但是,编辑计时器以触发将来的一分钟,等待并检查日志非常繁琐。

可以做一些像systemctl --user execute xxxxxx.service计时器触发一样运行dang的事情吗?

Answers:


12

您可以手动激活任何单元,除非它包含RefuseManualStart=yes和和/或RefuseManualStop=yes指令(它们完全按照其说的话)。只是发布systemctl --user start <whatever>(并systemctl --user stop <whatever>执行相反的操作)。

引用systemctl(1)

启动 模式...

启动(激活)在命令行上指定的一个或多个单元。

<...>

停止 模式...

停止(停用)命令行上指定的一个或多个单元。


在这里Failed to restart {foo}.service: Operation refused, unit {foo}.service may be requested by dependency only.
无法

1
@ eMPee584自从编写了此答案以来,systemd获得了新的指令RefuseManualStart=RefuseManualStop=(它们确实执行了他们所说的话)。我已经更新了答案以提及这一点。
intelfx
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.