faq_2026-09-29_st_4
title: “Linux服务启动失败提示Job for network.service failed怎么排查” description: “CentOS 等系统里重启服务时报 Job for network.service failed,服务起不来。本文以这条高频报错为例讲清 systemd 服务启动失败的通用排查法:报错文本反读、systemctl status 三行定位、journalctl 找真死因,以及修好后的验证闭环。” slug: job-for-service-failed-troubleshoot date: 2026-09-29 categories: [“常见问答”] draft: false
重启网卡服务,屏幕弹出一行报错:Job for network.service failed. See systemctl status network.service and journalctl -xn。换 docker、换其他服务,照样可能撞见同款句式。很多人卡在这行报错前不知道下一步看哪——其实这行报错本身就是路标,它让你去看的那两条命令,就是排障的正路。
原因分析
Linux 里的服务交给 systemd 统一管理:它按配置拉起进程、盯着进程状态。Job failed 的意思是这个服务在启动过程中就退出了——进程想跑但没跑起来。原因不外乎几类:配置文件改出语法或参数错误、依赖的前置条件没满足、端口或资源被占用、执行路径与权限不对。报错里点名的两条命令各管一段:systemctl status 看服务当前状态和加载信息,journalctl 看启动过程里到底发生了什么。报错不是让你看它这一行,而是让你顺着它指的方向找真凶——真死因几乎都写在日志里,缺的只是去看的习惯。
分步解决
- 看状态。执行 systemctl status network.service(换成你起不来的服务名),重点看三处:Loaded 行确认配置文件路径对不对、是否报错;Active 行确认是 failed 还是 inactive——failed 是跑挂了,inactive 是压根没在跑,处置方向不同;下面几行通常已带出关键报错摘要。
- 翻日志找真死因。执行 journalctl -xe,或 journalctl -u network.service -n 50 定向看这个服务近五十行日志。往下翻到带红色错误标记的段落,末尾那几行基本就是压死服务的直接原因,按行文线索继续查。
- 按线索归类处理。配置类:改过配置文件的先回头核对该文件的语法与取值,有自带检查命令的先跑检查;依赖类:看状态输出里的依赖项是否都起来,逐个补齐;占用类:查端口被谁占着,停掉占用方或换端口;路径权限类:核对执行文件路径与运行账户权限。
- 修复后重启并验证。systemctl restart 重启服务,再 status 确认 Active 变为 running;只看一次不算数,隔一会儿再看一眼,确认不是起来又挂的假活。
- 补自启与记录。确认 systemctl enable 已设置开机自启;把这次的症状、日志关键行和改动点记进变更记录,下次同类故障直接对号。
预防
改配置和改代码一个道理:改完先验证再重启,别让一个逗号的失误在深夜放大成停机。贵州诚鑫致达科技维护客户服务器时坚持两件事——变更前备份原配置、变更后必走一次 restart 加 status 的验证闭环,服务起没起,从来不听感觉听状态。