Kubuntu 26.04 更新后 KDE Plasma 崩溃:fontconfig 竞态条件修复
来源:dev.to — 2026-09-23
📋 概述
作者更新一台 Kubuntu 26.04 LTS 工作站后桌面坏了:Plasma 能启动,桌面闪一下就消失,plasmashell 循环崩溃;而 Konsole、Firefox、Thunderbird 都正常,系统本身响应良好,只是没有桌面。查 coredump 发现 plasmashell 反复 SIGSEGV,栈里出现 FcCharSetHasChar,根因是登录时的竞态:当系统更新触及字体包后,plasmashell 开始读字体缓存的同时有别的东西触发缓存重建,fontconfig 在 plasmashell 已读取旧缓存时写入新缓存,导致段错误。因为是时序问题,所以并非每次更新都发作,重启有时只是暂时掩盖。文章给出确认诊断的命令、立即恢复桌面的临时修复,以及通过 systemd drop-in 在 plasmashell 启动前强制重建字体缓存的永久修复。
🔑 核心要点
- 症状是 plasmashell 每几秒 SIGSEGV 一次、桌面闪一下即消失,而单个应用与系统本身都正常。
- 根因是登录时的竞态:fontconfig 在 plasmashell 读取字体缓存的同时写入新缓存。
- 因为纯属时序问题,并非每次更新都发作,简单重启有时看起来修好其实只是暂时掩盖。
- 诊断可用 coredumpctl 查看 plasmashell 崩溃栈,栈里出现 FcCharSetHasChar 即为此问题。
- 永久修复是加 systemd drop-in:给 plasmashell 服务加 ExecStartPre=/usr/bin/fc-cache -f,启动前强制重建缓存。
💡 金句
这是一个时序问题,所以它不会每次更新都发作,也所以简单重启有时看起来修好了、其实只是暂时掩盖。
👍 0
👎 0
← 返回 dev.to 首页