如何自定义Ubuntu中Compton的行为
小樊
47
2026-01-09 10:21:36
Ubuntu 中自定义 Compton 的行为
一 准备与安装
- 在 Ubuntu 上安装 Compton(若尚未安装):
- sudo apt update
- sudo apt install compton
- 检查是否已在运行:
- 如无输出,可临时前台启动以便观察日志:
- compton --config ~/.config/compton.conf -f
- 注意:Compton 是 X11 合成器,通常不与 Wayland 会话一起使用;在 GNOME/KDE 等完整桌面环境中可能与内置合成器冲突,建议在使用 Openbox/i3 等轻量 WM 时启用。
二 配置文件位置与编辑
- 配置文件默认路径:~/.config/compton.conf(不存在则创建):
- mkdir -p ~/.config && nano ~/.config/compton.conf
- 也可将配置放在 /etc/compton.conf(系统级,需 sudo 编辑),并通过命令行指定:
- sudo nano /etc/compton.conf
- compton --config /etc/compton.conf
- 修改后需重启 Compton 生效(见下一节)。
三 常用配置项与示例
- 全局开关与渲染
- backend = glx # 渲染后端:glx/xrender
- vsync = true # 垂直同步,减少撕裂
- shadow = true # 窗口阴影
- fade = true # 淡入淡出动画
- 模糊与透明度
- [blur]
- method = gaussian # 模糊算法
- size = 15 # 模糊半径
- deviation = 7.0 # 偏差
- [opacity-rule]
- 90:class_g ‘Firefox’ # 按窗口类设置不透明度
- 95:name ‘Terminal’
- 阴影排除示例(避免对桌面/托盘等绘制阴影)
- shadow-exclude = [
“name = ‘Conky’”,
“class_g = ‘Polybar’”,
“role = ‘toolbox’”
]
- 完整示例(可直接保存为 ~/.config/compton.conf 并试用)
- backend = glx
- vsync = true
- shadow = true
- fade = true
- [blur]
- method = gaussian
- size = 15
- deviation = 7.0
- [opacity-rule]
- 90:class_g ‘Firefox’
- 95:name ‘Terminal’
四 应用与开机自启
- 手动重启
- 若以进程方式运行:killall compton && compton --config ~/.config/compton.conf -f
- 若以 systemd 管理:sudo systemctl restart compton(若已创建服务单元)
- 开机自启(systemd 用户服务,推荐)
- mkdir -p ~/.config/systemd/user
- nano ~/.config/systemd/user/compton.service
- 写入:
- [Unit]
- Description=Compton Compositor
- After=graphical.target
- [Service]
- ExecStart=/usr/bin/compton --config %h/.config/compton.conf -b
- Restart=on-failure
- [Install]
- 启用并启动:
- systemctl --user daemon-reload
- systemctl --user enable --now compton
- 开机自启(传统方式,适用于无 systemd 或会话启动脚本)
- 在 ~/.xprofile 或窗口管理器启动脚本中加入:
- compton --config ~/.config/compton.conf -b &
- 提示:某些桌面环境(如 GNOME/KDE)自带合成器,启用 Compton 前建议先关闭内置合成以避免冲突。
五 常见问题与优化
- 画面撕裂:开启 vsync(或按硬件与驱动尝试 “drm” 模式);若仍撕裂,可测试 vsync=false 并配合显示器刷新率设置。
- 性能优化:在低端显卡或高分辨率下,优先使用 backend glx,必要时关闭 shadow/fade/blur;仅对需要的窗口启用模糊与透明。
- 兼容性与冲突:在 GNOME/KDE 可能出现与内置合成器冲突或特效异常,建议在这些环境中禁用 Compton 或改用其内置合成方案。
- 日志与排错:启动时加 -f(前台)与 –log-level=debug、–log-file=/tmp/compton.log,根据日志定位问题。