首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用systemd启动单一服务

使用systemd启动单一服务
EN

Server Fault用户
提问于 2018-03-17 10:27:43
回答 1查看 2.2K关注 0票数 1

我最近读了很多关于systemd的文章,但我不知道如何通过systemd运行我的mono-service

下面是我当前的systemd守护进程配置:

代码语言:javascript
复制
root@LNXOSESTNL:/opt/omnius-statusdaemon# cat /etc/systemd/system/omnius-statusdaemon.service 
[Unit]
Description="Omnius StatusDaemon"
After=network.target

[Service]
Type=simple
User=omnius-statusdaemon
Group=omnius-statusdaemon
ExecStart=/usr/bin/mono-service -d:/opt/omnius-statusdaemon /opt/omnius-statusdaemon/Dynacommerce.StatusQueueService.exe
PIDFile=/tmp/omnius-statusdaemon.pid
StandardOutput=journal+console

[Install]
WantedBy=default.target

当我直接运行上面的exec脚本时,所有操作都很好,我的mono-service也在运行。然而,通过systemd,输出如下:

代码语言:javascript
复制
root@LNXOSESTNL:/opt/omnius-statusdaemon# systemctl status omnius-statusdaemon.service
● omnius-statusdaemon.service - "Omnius StatusDaemon"
   Loaded: loaded (/etc/systemd/system/omnius-statusdaemon.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Sat 2018-03-17 11:26:38 CET; 2s ago
  Process: 11099 ExecStart=/usr/bin/mono-service -d:/opt/omnius-statusdaemon /opt/omnius-statusdaemon/Dynacommerce.StatusQueueService.exe (code=exited, status=0/SUCCESS)
 Main PID: 11099 (code=exited, status=0/SUCCESS)

Mar 17 11:26:38 LNXOSESTNL systemd[1]: Started "Omnius StatusDaemon".

希望有人能帮我指引正确的方向。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2018-03-17 11:55:12

SystemD认为服务死了,因为在期望的路径上没有PID文件。这个pid文件应该由您的服务创建,系统只需检查,它不会创建这个文件。如果不希望在服务中创建此文件,则可以在ExecStartPost=节中使用小型shell脚本创建该文件。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/902162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档