首页 游戏 软件 资讯 排行榜 专题
首页
系统平台
Linux系统怎么查看服务启动失败的原因 journalctl排查技巧

Linux系统怎么查看服务启动失败的原因 journalctl排查技巧

热心网友
80
转载
2026-04-25

Linux服务启动失败?别慌,journalctl排查技巧全解析

linux系统怎么查看服务启动失败的原因 journalctl排查技巧

服务启动失败,是运维工作中最常遇到的“老朋友”。一个核心技巧是:直接运行 journalctl -u 服务名 -n 50 -e,90%的问题根源就藏在最后那几行日志里。 这相当于直接翻到故障剧本的最后一页,往往答案就在那里。但有时候,剧本本身可能就出了问题,或者记录剧本的本子不见了。接下来,我们就顺着这条线索,把几种常见的“查不到”和“看不懂”的情况彻底理清。

journalctl -u 查不到日志?先确认服务名和 unit 文件是否加载成功

首先得明确一点:journalctl -u 只追踪那些已经被系统加载的 unit。所以,如果命令执行后一片空白,别急着怀疑日志系统,很可能第一步就踩了坑。

最常见的情况是服务名输错了。比如,完整的服务名通常是 nginx.service,但很多人会习惯性地只输入 nginx。更隐蔽的情况是,服务根本没安装,或者安装了但未被启用。这时候,可以先用 systemctl list-units --type=service | grep 服务名 看看它是否在运行的服务列表中。再用 systemctl status 服务名 仔细检查输出:重点看“Loaded”这一行,它显示了 unit 文件的路径以及是否启用(enabled)。如果这里显示的是 not-found(找不到文件)或者 masked(被屏蔽),那么 journalctl -u 自然就无迹可寻了。

为什么 journalctl -u 显示 “No entries”?检查 journal 是否持久化

遇到过这种情况吗?昨天服务明明崩溃过,今天用 journalctl -u 却什么也查不到。这很可能不是灵异事件,而是 journal 的存储方式在作祟。

默认情况下,systemd journal 的日志只保存在内存或 /run/log/journal/ 目录下,一旦重启,这些记录就烟消云散了。如果服务故障发生在上一次启动周期内,而你的系统又没有配置持久化日志,那么查询结果为空就再正常不过了。

此时,可以尝试使用 journalctl -b -u 服务名 来查询本次启动以来的所有相关日志。但治本之策,是检查并启用持久化。方法很简单:打开 /etc/systemd/journald.conf 配置文件,找到 Storage= 这一项。如果它是 volatile(易失的),就改为 persistent(持久的)。然后,手动创建存储目录并重启服务:mkdir -p /var/log/journal && systemctl restart systemd-journald。这样一来,日志就能在重启后幸存下来了。

日志里只看到 “Failed to start”,但没具体错误?加 --no-pager + grep -i

有时候,systemctl status 给出的那句“Failed to start”就像一份语焉不详的病情通知书,关键细节全被隐藏了。问题往往出在分页器上——重要的错误信息可能被截断,或者淹没在海量的 INFO 级别日志里。

这时候,需要更粗暴直接的过滤方式:journalctl -u 服务名 --no-pager | grep -i “fail\|error\|refused\|timeout\|denied”。这个命令能帮你把包含关键错误线索的行全部揪出来。特别要警惕以下几种高频“暗号”:

  • Permission denied:别只盯着文件权限。这很可能是 SELinux 安全上下文不对(用 ls -Z 检查),或者是 systemd 的 ProtectHome=true 等安全特性阻止了服务访问特定目录。
  • Address already in use:端口冲突的老问题。但注意,netstat -tulpn 可能看不到由 socket 激活的服务,更推荐使用 ss -tlnp 来检查。
  • status=217/USER:这通常指向 unit 文件中 User= 指定的用户不存在,或者该用户的 Home 目录无法访问。
  • No such file or directory:最常见的是 ExecStart 指定的可执行文件路径写错了,或者是程序依赖的动态库缺失(用 ldd /path/to/binary 验证一下)。

日志没报错,但服务就是不起来?试试 journalctl -b -p err

最让人头疼的情况莫过于此:服务的日志干干净净,但它就是启动失败。这说明,问题可能不在服务本身,而在它所依赖的“环境”上。

比如,服务配置了网络访问,但启动时网络尚未就绪(缺少 After=network-online.target 依赖);或者服务需要精确时间来进行 TLS 握手,但系统时间未同步(缺少 After=time-sync.target)。甚至,可能是根文件系统意外变成了只读状态(用 df -h / 检查一下)。

这时,应该把视野放宽。运行 journalctl -b -p err,查看本次系统启动以来所有错误级别(err)及以上的日志。真正的罪魁祸首,往往在你的服务尝试启动之前就已经出现了。这才是解决问题的关键线索。

说到底,真正卡住人的,往往是那些“沉默的失败”。环境变量缺失、工作目录不可写、EnvironmentFile= 指向的配置文件不存在,甚至只是 $PATH 环境变量里缺少了 /usr/local/bin 这样的路径。因此,别只死盯着 journalctl -u 的输出。一个更有效的思路是:通过 systemctl show 服务名 命令,仔细查看系统实际为服务设置的环境(Environment)、工作目录(WorkingDirectory)和运行用户(User),然后尝试手动在命令行复现 ExecStart 的命令。很多时候,手动执行一下,错误就会自己跳出来告诉你答案了。

来源:https://www.php.cn/faq/2357344.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

安伯尼克RG DS掌机搭载专属Linux系统,双屏体验一键切换
AI
安伯尼克RG DS掌机搭载专属Linux系统,双屏体验一键切换

安伯尼克为其RGDS双屏掌机发布了全新的定制Linux系统。该系统针对双屏硬件进行了专门优化,提供独立调节上下屏亮度、屏幕翻转等功能,并内置DS游戏专属菜单实现一键启动。用户可通过microSD卡安装该系统,并能通过插拔存储卡在Linux与Android双系统间便捷切换。此外,系统还通过全能模拟器

热心网友
05.17
Linux系统怎么查看服务启动失败的原因 journalctl排查技巧
系统平台
Linux系统怎么查看服务启动失败的原因 journalctl排查技巧

Linux服务启动失败?别慌,journalctl排查技巧全解析 服务启动失败,是运维工作中最常遇到的“老朋友”。一个核心技巧是:直接运行 journalctl -u 服务名 -n 50 -e,90%的问题根源就藏在最后那几行日志里。 这相当于直接翻到故障剧本的最后一页,往往答案就在那里。但有时候,

热心网友
04.25
Linux系统查看硬件配置信息 常用命令汇总【教程】
系统平台
Linux系统查看硬件配置信息 常用命令汇总【教程】

Linux系统硬件信息查看:四条命令覆盖九成日常场景 想快速摸清一台Linux服务器的硬件底细?其实不必翻箱倒柜找文档。日常工作中,九成以上的硬件信息查询需求,靠下面这四条命令就能搞定。其余的,大多属于特定场景下的补漏方案,或是权限不足时的替代选择。 lscpu、free -h、lsblk、lspc

热心网友
04.25
Linux 6.18内核升级:DDoS防御强化,新增多款硬件驱动
科技数码
Linux 6.18内核升级:DDoS防御强化,新增多款硬件驱动

10 月 6 日消息,Linux 6 18 的网络子系统更新现已正式合并,为新版本内核带来了多项性能优化、新硬件支持及安全性提升。这些改进将涵盖有线与无线网络设备,为即将成为长期支持版(LTS)的

热心网友
12.09
Ubuntu专业认证考试指南:首科“Linux终端”考察要点与100美元费用详解
科技数码
Ubuntu专业认证考试指南:首科“Linux终端”考察要点与100美元费用详解

10 月 26 日消息,Canonical 发文,宣布推出 Canonical Academy 专业技能认证平台,旨在通过基于 Ubuntu 的实操考试,帮助用户验证其在开源领域的专业技能。目前,

热心网友
10.27

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

亚马逊FNSKU标签制作全流程:生成打印与贴标指南
业界动态
亚马逊FNSKU标签制作全流程:生成打印与贴标指南

在亚马逊FBA运营中,商品入仓前正确粘贴FNSKU标签是至关重要的第一步。这串看似简单的条形码,直接决定了库存的精准识别、订单的准确履行,更是构建品牌库存护城河、有效防止跟卖的核心防线。切勿轻视——标签打印模糊、粘贴位置错误,极易导致货物被FBA仓库拒收,甚至引发库存数据混乱,造成不必要的损失。 本

热心网友
05.17
逸剑风云决厂卫相助会触发哪些隐藏剧情
游戏攻略
逸剑风云决厂卫相助会触发哪些隐藏剧情

在《逸剑风云决》的武侠世界中,玩家时常会遭遇身陷重围、濒临绝境的危机时刻。而就在这胜负将分的紧要关头,有时会有一股神秘力量骤然介入,彻底扭转战局——那便是行事诡秘的厂卫。他们的登场,绝非寻常的“援军抵达”,更像是一把精心设计的钥匙,悄然开启了江湖帷幕背后,那重更为错综复杂、暗流涌动的剧情篇章。 逸剑

热心网友
05.17
绝地求生电波干扰背包功能详解与使用指南
游戏攻略
绝地求生电波干扰背包功能详解与使用指南

《绝地求生》第41赛季已全面开启,备受玩家关注的“电波干扰背包”迎来了自上线以来最大规模的机制重做。官方更新日志已经发布,本文将为您深入解析本次调整的核心要点与实战影响,帮助您在新赛季中精准掌握这件战术装备的全新玩法。 简而言之,本次更新的核心理念是“风险与收益的再平衡”。开发团队显然评估了该背包在

热心网友
05.17
绯月絮语最强阵容搭配攻略与角色组合推荐
游戏攻略
绯月絮语最强阵容搭配攻略与角色组合推荐

打造一套高胜率的绯月絮语阵容,核心在于角色间的精准定位与战术协同。这不仅仅是简单堆砌高战力角色,更需要深入理解各位置的战略职能,以及他们如何通过技能组合产生“1+1>2”的团队效应。 核心输出角色的选择 阵容的战术轴心通常由一至两位核心输出角色奠定。例如,以极致单体爆发见长的[角色名 1],其终结技

热心网友
05.17
Temu注册码15位错误原因与解决方法详解
业界动态
Temu注册码15位错误原因与解决方法详解

在跨境电商领域,Temu凭借其独特的全托管模式和强大的供应链整合能力,已成为众多卖家出海拓展业务的重要选择。然而,不少卖家在准备入驻时,常被一个看似简单的系统提示所阻碍——“注册码长度为15位”,导致注册流程中断,甚至可能错失快速开店的宝贵时机。 本文将深入解析此问题的根本原因,并提供一套清晰、可操

热心网友
05.17