无法在ubuntu 18.04中将python程序作为服务运行

无法在ubuntu 18.04中将python程序作为服务运行,python,zerorpc,Python,Zerorpc,我试图在ubuntu 18.04中运行一个python程序作为后台服务。它导入了zerorpc模块,我已经用pip3安装了该模块,并在终端上用python命令进行了测试。但它显示状态:当我尝试以dummy.service运行程序时失败。以下是我的服务文件: [Unit] Description=Dummy Service [Service] Type=Simple ExecStart=/usr/bin/python3 /usr/bin/server.py [Install] WantedBy=m

我试图在ubuntu 18.04中运行一个python程序作为后台服务。它导入了zerorpc模块,我已经用pip3安装了该模块,并在终端上用python命令进行了测试。但它显示状态:当我尝试以dummy.service运行程序时失败。以下是我的服务文件:

[Unit]
Description=Dummy Service
[Service]
Type=Simple
ExecStart=/usr/bin/python3 /usr/bin/server.py
[Install]
WantedBy=multi-user.target
以下是serice启用后的状态:

dummy.service - Dummy Service
Loaded: loaded (/lib/systemd/system/dummy.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-11-26 16:18:57 IST; 5s ago 

Process: 4101 ExecStart=/usr/bin/python2 /usr/bin/server.py (code=exited, status=1/FAILURE)
Nov 26 16:18:57 vipul-HP-Notebook systemd[1]: Started Dummy Service.

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]: Traceback (most recent call last):

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]:   File "/usr/bin/server.py", line 1, in <module>

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]:     import zerorpc

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]: ImportError: No module named zerorpc

Nov 26 16:18:57 vipul-HP-Notebook systemd[1]: dummy.service: Main process exited, code=exited,      status=1/FAILURE

Nov 26 16:18:57 vipul-HP-Notebook systemd[1]: dummy.service: Failed with result 'exit-code'.
dummy.service-虚拟服务
已加载:已加载(/lib/systemd/system/dummy.service;已启用;供应商预设:已启用)
活动:自2019年11月26日星期二16:18:57 IST以来失败(结果:退出代码);5秒前
进程:4101 ExecStart=/usr/bin/python2/usr/bin/server.py(代码=退出,状态=1/失败)
11月26日16:18:57 vipul HP笔记本电脑系统D[1]:启动虚拟服务。
11月26日16:18:57 vipul HP笔记本电脑Python[4101]:回溯(最近一次呼叫最后一次):
11月26日16:18:57 vipul HP Notebook python2[4101]:文件“/usr/bin/server.py”,第1行,在
11月26日16:18:57 vipul HP笔记本电脑Python[4101]:导入zerorpc
11月26日16:18:57 vipul HP笔记本电脑Python[4101]:导入错误:没有名为zerorpc的模块
11月26日16:18:57 vipul HP笔记本电脑系统D[1]:虚拟。服务:主进程退出,代码=退出,状态=1/失败
11月26日16:18:57 vipul HP笔记本电脑系统D[1]:虚拟。服务:失败,结果为“退出代码”。

我不知道为什么会这样。请帮忙

如果您的守护程序服务在导入模块时出错,则可能是您仅使用pip安装了该模块。以这种方式安装模块可使特定用户使用该模块,如果要使其在全局范围内可用,则必须使用管理员权限进行安装,如下所示:

sudo-H pip3安装模块\u名称


错误消息与服务文件不匹配(请注意
ExecStart
是什么)。撇开这一点不谈,可能是您已经通过pip完成了
zerorpc
包的pip安装,而这在您将其作为服务运行时不可用?也许您需要确保所有附加软件包都可以在系统范围内访问?我如何确保所有软件包在任何地方都可用?我对此知之甚少。我还将python2更改为python3。正如前面提到的,您的ExecStart命令使用的是
python3
,但在日志中它显示了
python2
。如果您更改了服务文件,则需要使用
sudo systemctl daemon reload
I相应地更改了服务文件,但仍然显示相同的错误!更改服务文件后是否运行了
守护程序重新加载
?您必须运行该命令,以便systemd拾取新命令。然后运行sudo systemctl restart dummy