温馨提示×

linux compton怎样排除冲突

小樊
42
2026-09-21 23:58:12
栏目: 智能运维

在 Linux 里使用 Compton(或其继任者 Picom) 时,常见的“冲突”主要来自:

  • 和其他 compositor(合成器)冲突
  • 和窗口管理器 / 桌面环境冲突
  • 和某些特效、驱动、全屏应用冲突

下面按「排查思路 + 解决方法」说明。


一、避免多个合成器同时运行(最常见冲突)

1. 确认是否已有合成器

很多桌面环境自带:

  • GNOME:Mutter
  • KDE:KWin
  • XFCE:自带 compositor
  • MATE / Cinnamon:也有

检查是否有其他 compositor:

ps aux | grep -E "compton|picom|mutter|kwin|xfwm4|marco"

2. 关闭系统自带合成器

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

MATE:
系统 → 首选项 → 窗口 → 关闭“使用合成效果”

KDE / GNOME:
一般不建议再跑 compton,直接禁用或卸载 compton


二、避免和窗口管理器冲突

1. 使用正确的启动方式

在 ~/.xinitrc 或 autostart 中:

compton &

或(推荐):

picom &

⚠️ 不要和 xcompmgr 同时用

2. 某些 WM 不兼容

  • awesome、i3、bspwm、openbox ✅ 支持
  • 老版本 twm ❌ 不推荐

三、排除特定窗口 / 应用冲突

1. 全屏游戏 / 视频闪屏

在 compton 配置中排除:

unredir-if-possible = true;

# 或排除特定程序
opacity-rule = [
  "0:class_g = 'Steam'",
  "0:class_g = 'firefox' && window_type = 'normal'"
];

2. 屏蔽某些窗口不合成

shadow-exclude = [
  "class_g = 'Notify-osd'",
  "class_g = 'Conky'"
];

四、和 NVIDIA / 驱动冲突

1. NVIDIA 常见冲突

在配置中加:

backend = "glx";
glx-no-stencil = true;
glx-copy-from-front = false;

或改用:

backend = "xrender";

2. 画面撕裂

vsync = true;

五、使用 Picom 替代 Compton(强烈推荐)

Compton 已停止维护,建议用 picom:

sudo apt install picom
picom --config ~/.config/picom/picom.conf

六、快速排查流程(实用)

  1. 先关掉所有 compositor
  2. 只启动 picom(无配置)
  3. 逐步加配置
  4. 出问题时用:
picom --log-level TRACE

如果你愿意,可以告诉我:

  • 用的 发行版 + 桌面环境
  • 是 闪屏 / 卡顿 / 黑屏 / 启动失败
  • 是否有 NVIDIA 显卡

我可以直接给你一份可用的 picom 配置。

0 踩