温馨提示×

怎样排查linux compton错误

小樊
43
2026-09-09 18:49:04
栏目: 智能运维

在 Linux 上排查 compton(或新版 picom) 的报错,一般可以按下面步骤来。


一、确认你用的是 compton 还是 picom

很多发行版已用 picom 替代 compton:

which compton
which picom
  • picom → 用 picom
  • 只有 compton → 老版本

下面以 compton / picom 通用 说明。


二、前台运行,看真实报错(最重要)

不要直接后台启动,先前台看日志:

compton --config ~/.config/compton.conf
# 或
picom --config ~/.config/picom.conf

常见错误会直接打印在终端,例如:

  • 配置文件语法错误
  • backend 不支持
  • 找不到 display

三、开启调试日志

compton --debug
# 或
picom --debug

或写配置:

debug = true;

日志会显示:

  • 哪些窗口被忽略
  • 渲染失败原因
  • GL / Xrender 问题

四、检查配置文件

常见错误来源:

1. 配置文件路径

  • compton:~/.config/compton.conf
  • picom:~/.config/picom.conf

2. 语法错误

测试配置是否合法:

compton --config ~/.config/compton.conf --dry-run

3. 常见错误配置

backend = "glx";   # 驱动不支持会崩
vsync = true;

可先改为:

backend = "xrender";

五、检查显示环境

1. 是否在 X11

compton 不支持 Wayland

echo $XDG_SESSION_TYPE
  • wayland → compton 无法使用
  • x11 → 正常

六、检查显卡驱动

glxinfo | grep "OpenGL renderer"
  • NVIDIA:确保装了 nvidia-driver
  • Intel / AMD:确保 mesa 正常

GLX 后端失败时常报:

Failed to initialize GLX

七、常见错误及解决

1. 黑屏 / 闪屏

backend = "xrender";
unredir-if-possible = false;

2. 透明失效

opacity-rule = [
  "90:class_g = '.*'"
];

3. 启动就退出

看是否已有 compositor:

ps aux | grep compton

八、日志文件位置

compton 本身不写日志文件,但你可以重定向:

compton --debug > ~/compton.log 2>&1

九、最小可用配置(排查用)

backend = "xrender";
vsync = false;
shadow = false;
fade = false;

逐步加功能,定位问题。


如果你愿意,可以把:

  • 发行版
  • 显卡
  • 报错原文
  • 配置文件

发出来,我可以直接帮你定位。

0