在 CentOS 上轻松配置 Compton 的步骤
一 安装与准备
- 启用 EPEL 仓库,然后使用 yum 或 dnf 安装 Compton:
- sudo yum install -y epel-release
- sudo yum install -y compton # 或 sudo dnf install -y compton
- 若提示找不到包,可先执行系统更新:sudo yum update -y
- 建议先备份现有配置(如已有):mv ~/.config/compton.conf ~/.config/compton.conf.bak
二 创建最小可用配置
- 生成配置文件:mkdir -p ~/.config && nano ~/.config/compton.conf
- 粘贴以下最小可用配置(按需增删):
- backend = “glx”
- fps = 60
- shadow = true
- shadow-exclude = [ “name = ‘Dmenu’”, “class_g = ‘Conky’”, “class_g = ‘Polybar’” ]
- fade-in-out = true
- fade-delta = 10
- glx-no-stencil = true
- glx-copy-from-front = false
- unredirect = false
- alpha-threshold = 1.0
- 说明:
- 使用 glx 后端可获得更好的硬件加速;如出现撕裂或卡顿,可切换为 xrender 再测试。
- 通过 shadow-exclude 排除菜单/面板等不需要阴影的窗口,能减少视觉干扰与开销
三 启动与开机自启
- 手动启动(会话内测试):compton --config ~/.config/compton.conf
- 设为系统服务(推荐在登录会话中运行,而非系统级 multi-user.target):
- 创建服务:sudo nano /etc/systemd/system/compton.service
- 写入以下内容(将 your-username 替换为实际用户名):
- [Unit]
- Description=Compton Compositor
- After=display-manager.service
- [Service]
- Type=simple
- ExecStart=/usr/bin/compton --config /home/your-username/.config/compton.conf
- Restart=always
- User=your-username
- Environment=DISPLAY=:0
- [Install]
- WantedBy=graphical.target
- 启用并启动:
- sudo systemctl daemon-reload
- sudo systemctl enable --now compton.service
- 如需查看状态:systemctl --user status compton.service(若以用户服务运行)或 systemctl status compton.service
- 提示:
- 不建议在纯控制台环境(无图形会话)启用 Compton。
- 某些显示管理器(如 GDM)可能需要额外配置才能在登录会话中自动启动,可参考其会话启动脚本方式
四 验证与常见问题
- 验证效果:
- 移动/缩放窗口观察是否有淡入淡出与阴影变化;播放视频时检查是否出现撕裂或卡顿。
- 查看日志定位问题:compton --config ~/.config/compton.conf 2> /tmp/compton.log,然后查看 /tmp/compton.log
- 常见问题处理:
- 黑屏/撕裂/高占用:将 backend 改为 xrender,或将 unredirect 设为 true,并适当降低 fps(如 30–45)
- 阴影异常:在 shadow-exclude 中继续排除对应窗口的 class/name
- 启动失败:检查配置文件语法(括号/逗号/引号是否匹配),确认路径与权限正确
- 多显示器:使用 xrandr 检查输出名称与连接状态,必要时在配置或启动前调整显示布局