温馨提示×

CentOS如何开启Compton

小樊
41
2026-08-30 17:38:51
栏目: 智能运维

在 CentOS 上开启 Compton(一个轻量级的 X11 窗口合成器,用于实现窗口透明、阴影、淡入淡出等特效),通常需要经过安装、配置、启动三个步骤。

不过在开始之前,有几个重要前提需要了解:

  1. Compton 仅支持 X11 会话:如果你的 CentOS 使用的是 GNOME 桌面,且登录时选择的是 Wayland 会话,Compton 是无法运行的(Wayland 下由 GNOME 自带的 Mutter 负责合成)。你需要注销并在登录界面选择 “GNOME on Xorg”,或者使用的是 i3、Openbox、XFCE 等原生 X11 桌面环境。
  2. GNOME 默认已带合成功能:如果你用 GNOME 桌面,其实无需 Compton;它主要用于轻量级窗口管理器(如 i3、Openbox)来弥补没有特效的缺点。
  3. Compton 已被 Picom 取代:现在大多数发行版用 picom(Compton 的活跃分支)代替了 compton。下文会同时给出 comptonpicom 的命令,两者配置基本通用。

第一步:安装 Compton / Picom

方法一:通过系统包管理器安装(推荐)

在 CentOS 上,通常需要先启用 EPEL 扩展仓库。

对于 CentOS 7:

sudo yum install -y epel-release
sudo yum install -y compton

对于 CentOS 8 / Stream / Rocky / Alma: CentOS 8 之后的仓库中通常叫 picom

sudo dnf install -y epel-release
sudo dnf install -y picom

安装完成后,可以通过 which comptonwhich picom 确认命令是否存在。

方法二:源码编译安装(适用于仓库里找不到包的情况)

如果你需要最新版的 Compton,可以从源码编译:

# 安装依赖和编译工具
sudo yum groupinstall "Development Tools" -y
sudo yum install -y git libX11-devel libXfixes-devel libXext-devel libXrender-devel libXrandr-devel libXcomposite-devel dbus-devel pcre-devel libdrm-devel mesa-libGL-devel libconfig-devel

# 下载源码并编译
git clone https://github.com/chjj/compton.git
cd compton
make
sudo make install

第二步:创建配置文件

Compton 的行为由配置文件控制。通常配置文件位于 ~/.config/compton.conf(如果是 picom,也可以是 ~/.config/picom.conf)。

创建目录并编辑配置文件:

mkdir -p ~/.config
nano ~/.config/compton.conf

将以下内容复制进去(这是一个基础配置,提供阴影和淡入淡出特效):

# 使用 glx 后端(性能较好,如果黑屏就改成 xrender)
backend = "glx";

# 阴影设置
shadow = true;
shadow-radius = 8;
shadow-offset-x = -2;
shadow-offset-y = -2;
shadow-opacity = 0.5;

# 透明度动画(淡入淡出)
fade = true;
fade-delta = 2;
fade-in-step = 0.02;
fade-out-step = 0.02;

# 全屏应用(如游戏、视频)时自动关闭合成以避免卡顿
unredir-if-possible = true;

# 排除某些程序(例如不给某些窗口加阴影)
shadow-exclude = [ "n:e:Notification" ];

保存并退出(Nano 编辑器按 Ctrl+O 回车,再按 Ctrl+X)。


第三步:手动启动 Compton

在终端中直接运行以下命令即可开启(加 -b 表示后台运行):

# 如果安装的是 compton
compton -b

# 如果安装的是 picom
picom -b

如果配置正确且没有报错,你的窗口现在应该已经具有透明和阴影特效了。


第四步:设置开机自动启动

为了避免每次开机都手动输入命令,你需要将 Compton 添加到桌面环境的自启动项中。

情况 A:如果你使用 i3 / Openbox 等窗口管理器 编辑你的窗口管理器配置文件,加入启动命令。例如 i3 用户编辑 ~/.config/i3/config,在末尾加上:

exec --no-startup-id compton -b

情况 B:如果你使用 XFCE / LXDE 等带有“启动管理器”的桌面 进入系统的 “会话和启动” (Session and Startup) 设置,在“应用程序自启动”选项卡中添加一个新条目:

  • 名称:Compton
  • 命令:compton -b (或者 picom -b

情况 C:如果你是通过 startx.xinitrc 启动图形界面 编辑 ~/.xinitrc 文件,在启动窗口管理器(如 exec i3)的同一代码块中添加:

compton -b &

常见问题排查(Troubleshooting)

  1. 提示 “Failed to open display” 或无法运行:说明你当前不在 X11 图形会话中。请确认你已登录到 Xorg 会话,而不是纯命令行或者 Wayland 会话。
  2. 开启后屏幕黑屏或闪烁:可能是显卡驱动或后端(backend)不兼容。尝试编辑 ~/.config/compton.conf,将 backend = "glx"; 改为 backend = "xrender";,然后重启 Compton。
  3. 在 GNOME 下特效冲突或卡顿:GNOME 的 Mutter 本身就是合成器,如果强行运行 Compton 会冲突。建议要么换用 i3/Openbox 等环境,要么直接利用 GNOME 自带的特效(GNOME 开启透明需要借助/gnome-shell 扩展,如 “Transparent Windows” 等)。

0