Linux下使用systemctl启动服务失败 一、引言Linux下使用systemctl start/restart 命令启动服务结果失败这个时候可以通过journalctl 工具来查看systemd服务的日志journalctl -u 服务名显示该服务最近的20条日志journalctl -u 服务名 -n 20把 XXX.service 最近一个小时产生的 systemd 日志以 ISO 时间格式导出来不打开分页保存成 /tmp/localserver-last-hour.logjournalctl -u XXX.service --since 1 hour ago -o short-iso --no-pager /tmp/localserver-last-hour.log二、例子例子1可以看到该服务启动失败是因为无法成功打开依赖的动态库。所以这时可以查看对应的动态库是否存在来解决。例子2从该日志无法直观地看到服务启动失败的原因。所以我们查看该服务的配置文件可以看到启动该服务时应执行的命令是“/usr/local/lingTongHui/mdnsd/mdnsd”[Unit] Descriptionmdnsd [Service] Typesimple WorkingDirectory/usr/local/lingTongHui/mdnsd/ ExecStart/usr/local/lingTongHui/mdnsd/mdnsd ExecStop/usr/bin/kill -9 $MAINPID RestartSec5 Restartalways [Install] WantedBymulti-user.target查看该服务对应的可执行文件的帮助可以看到该可执行文件默认不加-debug参数就是以守护进程的方式启动的。所以这就导致了通过systemctl启动该服务失败所以修改配置文件为[Unit] ... ExecStart/usr/local/lingTongHui/mdnsd/mdnsd -debug ...重新通过systemctl start/restart 命令启动该服务可以发现成功了。三、参考《如何查看systemctl启动服务的日志》《深入了解journalctl -u》
💡
读完这篇文章,你可以带走什么

本文来自编程新知一线开发与建站实战沉淀:讲清原理、给出可复现步骤、标注避坑要点。看完后可以直接在你的项目或网站中落地验证。

编程新知内容团队
一线开发 · 建站实施 · 持续更新
由资深前端工程师、后端架构师与建站实施人员共同维护,坚持"真实案例 + 完整步骤 + 避坑指南"的内容准则。如果你在落地中遇到问题,欢迎联系我们交流。

想把这套方案用到自己的项目上?

编程新知提供技术答疑与网站建设一站式服务,欢迎联系我们获取针对性建议。

联系工程师
📚

系统学习该技术

进入对应栏目,从基础到进阶完整学习,配套案例与避坑指南。

前往栏目 →
🏗️

需要落地实施

企业建站、SEO 优化、服务器部署等需求,交给工程师一步到位。

了解服务 →
💬

还有疑问

技术难题或方案咨询,联系编程新知获取一对一的专业建议。

联系我们 →