从systemd运行持久的python脚本?
发布时间:2020-12-13 13:50:50 所属栏目:Linux 来源:网络整理
导读:我有一个python脚本解码来自USB设备的输入并将命令发送到PHP脚本.从控制台运行时,该脚本运行良好,但我需要它在启动时运行. 我创建了一个systemd服务来启动脚本,看起来效果很好,除了systemctl start service-name进程永远不会让我返回命令提示符.在它运行时,
我有一个python脚本解码来自USB设备的输入并将命令发送到PHP脚本.从控制台运行时,该脚本运行良好,但我需要它在启动时运行. 我创建了一个systemd服务来启动脚本,看起来效果很好,除了systemctl start service-name进程永远不会让我返回命令提示符.在它运行时,我可以完全按照预期与输入设备进行交互.但是,如果我使用ctr-z退出systemctl启动进程,则脚本只会运行几秒钟. 这是我写的.service文件:
这是我的python脚本:
如何使脚本从服务文件异步运行,以便启动命令可以完成,脚本可以继续在后台运行? 最佳答案
您已指定After = default.target和WantedBy = default.target.这是不可解决的.
WantedBy指定目标在启动时将包含此服务,但After意味着在启动此服务之前确保命名目标已启动! 很可能你不需要After = default.target并且应该删除它. 我还建议您明确指定服务Type =.虽然默认设置目前很简单(适用于您正在做的事情),但旧版本的systemd可能表现不同.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |