温馨提示×

为何linux compton要配置

小樊
34
2026-10-12 14:13:31
栏目: 智能运维

在 Linux(尤其是使用 X11 窗口系统的桌面环境)中,Compton 是一个轻量级的复合管理器(compositor)。很多用户会专门去配置它,而不是“装了就用默认”,原因主要有以下几类。


一、为什么需要 Compton(为什么要用它)

1. 没有复合管理器,很多视觉效果无法实现

在 X11 下:

  • 窗口本身“不会”自己半透明
  • 阴影、淡入淡出、窗口动画都需要复合管理器

Compton 的作用就是:

  • 给窗口加 阴影
  • 实现 透明(透明度)
  • 减少 画面撕裂(tearing)
  • 提供更好的视觉一致性

很多轻量桌面(i3、Openbox、Awesome、bspwm)默认不带复合器,所以必须装 Compton


二、为什么“要配置”Compton

Compton 的默认配置往往不够好用,甚至有问题,所以需要手动调。

1. 默认配置可能不适合你的桌面

比如:

  • 阴影太重 / 太丑
  • 透明效果影响可读性
  • 某些窗口(如菜单、下拉框)闪烁

需要配置来:

shadow = true;
shadow-exclude = [ "class_g = 'i3-frame'" ];

2. 解决画面撕裂问题(重点)

很多人装 Compton 是为了 防撕裂。

默认配置可能:

  • 没开启后端(backend)
  • 没启用 vsync

常见配置:

backend = "glx";
vsync = true;

否则:

  • 视频撕裂
  • 拖动窗口卡顿

3. 性能与资源占用控制

Compton 虽轻,但配置不对会:

  • CPU 占用高
  • 老机器发热

需要配置:

unredir-if-possible = true;
fade = false;

4. 排除特定窗口(非常重要)

有些程序不希望被复合:

  • 全屏游戏
  • 视频播放器
  • 截图工具

配置示例:

unredir-if-possible = true;

opacity-rule = [
  "90:class_g = 'Firefox'",
  "100:class_g = 'mpv'"
];

5. 和窗口管理器配合

Compton 不是“自动完美”的:

  • i3 / bspwm 不会替你管透明
  • 需要 Compton 明确规则

例如:

  • 只有聚焦窗口透明
  • 非聚焦窗口变暗
inactive-opacity = 0.9;
focus-exclude = [ "class_g = 'i3bar'" ];

三、不配置会怎样?

常见后果:

  • 阴影丑
  • 菜单闪烁
  • 视频撕裂
  • 游戏卡顿
  • 电池掉得快

所以:Compton 不配置 ≈ 白装


四、现在还推荐 Compton 吗?

注意:

  • Compton 已基本停止维护
  • 常见替代:
    • picom(Compton 的活跃分支,推荐)
    • Wayland 自带复合(Sway / GNOME / KDE)

如果是新系统,建议:

picom

配置方式几乎一样。


总结一句话

Linux 下 Compton 要配置,是因为默认行为既不美观也不高效,只有配置后才能稳定、好看、不卡。

如果你愿意,我可以:

  • 给你一份 i3 + picom 推荐配置
  • 或针对 游戏 / 老笔记本 / 高刷屏 给专门配置

0 踩