Compton 在 CentOS 的安装与配置步骤
-
准备环境并安装
- 启用 EPEL 仓库,然后使用包管理器安装 Compton(适用于 CentOS 7/8/9):
- 安装 EPEL:sudo yum install -y epel-release
- 安装 Compton:sudo yum install -y compton(或 sudo dnf install -y compton)
- 验证安装:compton --version
- 如仓库无可用版本,可编译安装(需提前安装开发工具与依赖,如 mesa-libGL、libX11-devel、libXext-devel、libXrandr-devel 等)。
-
创建配置文件
- 推荐用户级配置:mkdir -p ~/.config && nano ~/.config/compton.conf
- 也可使用系统级:/etc/compton.conf(对所有用户生效)。
-
启动与自启动
- 手动测试:compton -c ~/.config/compton.conf &
- 开机自启动(推荐用户级 systemd 服务):
- 新建服务文件:sudo nano /etc/systemd/system/compton.service
- 内容示例:
[Unit]
Description=Compton Window Compositor
After=display-manager.service
[Service]
Type=simple
ExecStart=/usr/bin/compton -c /home/你的用户名/.config/compton.conf
Restart=on-failure
User=你的用户名
[Install]
WantedBy=multi-user.target
- 启用与启动:sudo systemctl daemon-reload && sudo systemctl enable --now compton
- 注意:某些桌面环境自带合成器,启用 Compton 前可先关闭自带合成以避免冲突。
核心配置项与示例
- 渲染与同步
- backend = “glx”(优先使用 GPU 加速;兼容性不佳时改为 “xrender”)
- vsync = true(减少撕裂;若输入延迟敏感可尝试 false)
- 阴影与淡入淡出
- shadow = false(或保留 true 并通过 shadow-exclude 精细排除)
- fade = false(低配或远程桌面可关闭以减负载)
- 透明度与窗口规则
- opacity = 0.9;inactive-opacity = 0.8;active-opacity = 1.0
- ignore-root = true(避免桌面背景异常)
- shadow-exclude = [“class_g = ‘GtkDialog’”, “class_g = ‘KDialog’”, “window_type = ‘dock’”, “window_type = ‘desktop’”]
- 多显示器
- 使用 xrandr 校验输出名:xrandr --query
- 在配置或启动脚本中按需设置 --output 与位置关系(Compton 主要读取 X11 当前状态,复杂多屏可在登录后由脚本设置好 xrandr 再启动 Compton)
- 示例片段(保存至 ~/.config/compton.conf)
backend = “glx”
vsync = true
shadow = false
fade = false
opacity = 0.9
inactive-opacity = 0.8
active-opacity = 1.0
ignore-root = true
shadow-exclude = [
“class_g = ‘GtkDialog’”,
“class_g = ‘KDialog’”,
“window_type = ‘dock’”,
“window_type = ‘desktop’”
]
性能优化与常见问题处理
- 性能优先的稳妥配置
- 关闭阴影与淡入淡出:shadow = false,fade = false
- 选择高效后端:backend = “glx”;若出现闪烁/黑屏,切换为 “xrender”
- 限制帧率:fps-limit = 60(避免无谓渲染)
- 降低重绘压力:glx-no-stencil = true;glx-copy-from-front = true
- 资源限制与监控
- 限制 CPU:cpulimit -l 50 -p $(pgrep compton)
- 查看资源:top/htop、glances;服务状态:systemctl status compton
- 驱动与兼容性
- 确认 OpenGL 可用:glxinfo | grep “OpenGL renderer”
- NVIDIA 专有驱动:sudo yum install akmod-nvidia(重启后再测试 Compton)
- 调试与日志
- 查看服务日志:journalctl -u compton.service -e
- 前台调试:compton --log-level debug --config ~/.config/compton.conf
不同桌面环境与使用场景建议
- 轻量窗口管理器(如 i3/sway 的 X11 会话)
- 建议始终启用 Compton;使用上面的“性能优先”配置,减少阴影/淡入淡出,保证流畅度。
- GNOME/KDE/Xfce
- 这些桌面自带或可选合成器。若启用 Compton,先关闭自带合成以避免冲突;遇到菜单/拖影异常,优先排除特定窗口类型或切换 backend。
- 远程桌面与虚拟机
- 关闭阴影/模糊/淡入淡出,限制 fps-limit,优先稳定性与低占用。