调试步骤:

1 关闭重启策略,可以看到更详细的报错信息。

删除**.service 里的Restart相关行,再起一次服务查看报错信息

sudo systemctl daemon-reload
sudo systemctl start s***http.service
sudo systemctl status s***http.service -l

我这里是找不到一个动态库文件(*.so) 。但是我直接运行程序确可以找到。

将库环境变量输出看下,确实动态库文件是被包含的。

echo $LD_LIBRARY_PATH

此时需要将这个环境变量输出后拷贝到*.service里面去重新加载运行就可以了,格式如下:

[Service]
Environment=LD_LIBRARY_PATH=/opt/rh/devtoolset-7/root/usr/lib64:/opt/rh/devtoolset-7/root/usr/lib:/opt/rh/devtoolset-7/root/usr/lib64/dyninst:

参考链接

Debug Systemd Service Units

Systemd 入门教程:实战篇

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐