Ubuntu 下 Compton 配置后出现问题的排查与修复指南
一 快速定位与回退
ps -e | grep compton;若未运行,可临时前台启动:compton &。前台运行能直接看到报错信息,便于定位问题。compton --config /dev/null &。若此时正常,说明问题出在配置文件本身。killall compton && compton &。如使用 systemd 管理,可执行:sudo systemctl restart compton;若未创建服务,可先手动前台运行验证。二 常见症状与对应修复
backend(在glx与xrender间切换以测试兼容性)、vsync(尝试true/false两种值)、shadow(先设为false排除阴影开销)、opacity/alpha(先关闭透明)。必要时更新显卡驱动(如执行:sudo ubuntu-drivers autoinstall),并确认驱动加载正常:lspci -k | grep -A 2 -i "VGA"。journalctl -xe 或 journalctl -u compton;若配置了日志文件,检查**~/.cache/compton/compton.log**。同时清理已弃用/移除的选项,例如:no-dock-shadow、menu-opacity、glx-swap-method、clear-shadow、paint-on-overlay 等,避免启动失败或异常行为。top/htop 观察占用,必要时用 cpulimit -l 50 -p <PID> 临时限制 CPU 占用;同时确认显卡驱动与系统资源正常。三 配置语法与版本兼容要点
no-dock-shadow 替换为 wintype shadow dock false;将 menu-opacity 替换为 wintype opacity popup_menu|dropdown_menu <值>。vsync 现在只接受布尔值(true/false),旧写法如 "none" 虽可兼容但已不推荐。clear-shadow 已被移除且默认始终启用;paint-on-overlay 在可能时自动启用,无需显式设置。# 阴影:对 dock 类型关闭阴影
wintype shadow dock false
# 菜单:设置弹出菜单与下拉菜单不透明度
wintype opacity popup_menu 0.95
wintype opacity dropdown_menu 0.95
# 垂直同步:使用布尔值
vsync true
# 已移除/自动生效的选项不要写
# clear-shadow true
# paint-on-overlay true
以上调整可避免启动报错与潜在渲染问题。四 日志与 systemd 管理
journalctl -u compton -b;若 Compton 以普通进程运行,查看系统日志:journalctl -xe;若配置了文件日志,检查**~/.cache/compton/compton.log**。日志中的警告与错误行号能直接指向问题配置项。[Unit]
Description=Compton Window Composer
After=xorg.service
[Service]
ExecStart=/usr/bin/compton --config /etc/compton.conf
Restart=on-failure
[Install]
WantedBy=multi-user.target
启用与重启:sudo systemctl daemon-reload && sudo systemctl enable --now compton。通过 systemd 可更方便地查看日志与自动重启。五 最小化配置模板与验证步骤
backend = "glx"
vsync = true
shadow = false
fading = false
opacity = false
killall compton && compton &;shadow、opacity、fading,每开启一项都重启验证;backend 为xrender再测;