温馨提示×

为什么centos compton闪屏

小樊
45
2026-10-03 07:41:34
栏目: 智能运维

在 CentOS 上使用 Compton(或 picom) 出现闪屏(flicker / screen tearing / 黑屏闪),通常是以下几个原因导致的,按常见程度排列:


一、显卡驱动问题(最常见)

1. 没有使用正确的显卡驱动

CentOS 默认常使用 llvmpipe(软件渲染) 或 nouveau(开源 NVIDIA 驱动),这两者都容易导致 Compton 闪屏。

✅ 检查:

glxinfo | grep "OpenGL renderer"
  • 如果是 llvmpipe → 没用硬件加速
  • 如果是 nouveau → NVIDIA 开源驱动,不稳定

✅ 解决:

  • NVIDIA 显卡:安装官方驱动
    yum install kmod-nvidia
    
  • Intel / AMD:确保安装了 mesa-dri-drivers

二、Compton 配置不当(VSync / 后端问题)

2. VSync 设置错误

不正确的 vsync 会导致:

  • 闪屏
  • 撕裂
  • 偶尔黑屏

✅ 推荐 .compton.conf:

vsync = true;
backend = "glx";
glx-swap-method = "exchange";

或尝试:

backend = "xrender";
vsync = false;

⚠️ glx-swap-method = "buffer-age" 在某些 CentOS 环境会闪


三、桌面环境冲突

3. 和桌面合成器冲突

如果你用的是:

  • GNOME(mutter)
  • KDE(kwin)
  • XFCE 自带的 compositor

同时又开了 Compton,会双重合成 → 闪屏

✅ 解决:

  • 关闭原桌面合成器
  • 或在非 GNOME/KDE 环境使用(i3 / Openbox)

XFCE 关闭方法:

设置 → 窗口管理器微调 → 合成器 → 关闭

四、使用 X11 而非 Wayland

4. Wayland 下 Compton 不工作

Compton 只支持 X11

✅ 检查:

echo $XDG_SESSION_TYPE

如果是 wayland → 必须切回 X11


五、多显示器 / 刷新率不同

5. 多屏刷新率不一致

  • 一个 60Hz,一个 144Hz
  • 或扩展屏时容易闪

✅ 解决:

  • 统一刷新率
  • 或只用一个屏幕测试

六、Compton 版本太旧(CentOS 常见问题)

CentOS 仓库里的 compton 可能很老,bug 多。

✅ 建议改用 picom(Compton 的活跃分支):

git clone https://github.com/yshui/picom
cd picom
meson setup build
ninja -C build

七、快速自检清单 ✅

你可以按顺序排查:

  1. glxinfo 是否是硬件加速
  2. 是否关闭了桌面自带合成器
  3. Compton 是否使用 glx 后端
  4. 是否是 X11 会话
  5. 是否换成 picom

如果你愿意,可以贴一下:

  • CentOS 版本
  • 显卡型号
  • 桌面环境
  • .compton.conf

我可以直接帮你改一份不闪屏的配置。

0 踩