怎样排查Debian Compton配置问题
小樊
43
2025-12-08 21:53:58
Debian 下 Compton 配置排查清单
一 快速定位运行状态和配置路径
- 确认进程与版本:运行命令查看是否已在运行并获取可执行路径,例如:
- ps -e | grep compton
- which compton && compton --version
- 定位配置文件:常见位置为 ~/.config/compton.conf 或 /etc/xdg/compton.conf;若文件不存在,可先创建最小化配置再逐项添加选项。
- 前台试运行便于观察输出:
- killall compton 2>/dev/null
- compton --config ~/.config/compton.conf -f
- 若使用 systemd 管理,先停用自启再前台调试,避免争用:
- systemctl --user stop compton.service 或 sudo systemctl stop compton
- 注意:Compton 是 X11 合成器,在 Wayland 会话中不会生效。
二 启用日志与查看输出
- 查看系统日志:Compton 的输出通常会进入 journald/syslog,可用以下命令实时观察:
- journalctl -u compton.service -b --no-pager -f
- 或(系统日志文件)tail -f /var/log/syslog | grep -i compton
- 前台运行自带详细输出:使用 -f/–fork 的反向参数(即前台)运行,可直接看到初始化与渲染相关日志:
- compton --config ~/.config/compton.conf -f
- 配置文件日志路径:部分版本/构建支持在配置中指定日志文件,例如在配置里加入:
- log-file /tmp/compton.log
保存后重启 Compton 并查看对应文件。若仍无日志,回到前台运行或改用 systemd 的 StandardOutput/StandardError 捕获输出。
三 最小化配置与逐项排除
- 用最小化配置验证基础环境(保存为 ~/.config/compton.conf):
- backend = glx
- vsync = true
- shadow = true
- fading = true
- mark-wmwin-focused = true
- mark-ovredir-focused = true
- detect-rounded-corners = true
- detect-client-leader = true
- 逐项启用你需要的特性(如 blur、opacity、dbe、glx-swap-method 等),每启用一项就重启 Compton 并观察是否复现问题,便于快速定位“问题选项”。
- 常见冲突与修复要点:
- 与桌面自带的合成器/特效冲突:在 Xfce/LXDE 等环境中,确保仅保留一个合成器运行(必要时在会话设置中关闭内置效果)。
- 配置文件语法/权限问题:检查 ~/.config/compton.conf 语法与权限(如 644),并排查 ~/.xprofile、~/.xsessionrc、~/.config/autostart/ 中重复启动或错误调用。
- 显卡驱动与渲染后端:若 glx 后端异常(花屏、撕裂、崩溃),切换到 xrender 测试;同时确认已安装并启用合适的 NVIDIA/AMD/Intel 驱动。
四 使用 Systemd 正确启动与调试
- 用户级服务示例(推荐,避免权限与环境问题):
- mkdir -p ~/.config/systemd/user
- 编辑 ~/.config/systemd/user/compton.service:
- [Unit]
- Description=Compton Window Composer
- After=graphical-session.target
- [Service]
- ExecStart=/usr/bin/compton --config %h/.config/compton.conf -b
- Restart=on-failure
- Environment=XDG_RUNTIME_DIR=/run/user/%U
- [Install]
- WantedBy=graphical-session.target
- 启用与启动:
- systemctl --user daemon-reload
- systemctl --user enable --now compton.service
- 系统级服务示例(仅在确有需要时使用,注意 User= 与权限):
- [Unit]
- Description=Compton Window Composer
- After=display-manager.service
- [Service]
- ExecStart=/usr/bin/compton --config /etc/xdg/compton.conf -b
- Restart=always
- User=你的用户名
- [Install]
- WantedBy=multi-user.target
- 启用与启动:
- sudo systemctl daemon-reload
- sudo systemctl enable --now compton.service
- 调试技巧:
- 查看服务日志:journalctl --user -u compton.service -b -f
- 前台运行以捕获首次初始化日志:将 ExecStart 临时改为 /usr/bin/compton … -f,确认无误后再改回 -b。
五 常见症状与对应处理
- 屏幕撕裂或卡顿:开启/调整 vsync(如 vsync=true),或切换 backend=glx/xrender 对比;确保驱动正确安装并更新。
- 阴影/透明度/模糊异常:逐项关闭 shadow、opacity、blur 定位触发项;检查是否与其他桌面特效叠加。
- 启动失败或配置不生效:核对配置文件路径与语法、检查 ~/.xprofile、~/.xsessionrc、~/.config/autostart/ 是否重复/错误启动;必要时用前台运行观察报错。
- 特定应用渲染异常(如视频、游戏):尝试切换 backend、关闭 dbe/glx-swap-method 等特性,或在应用内切换渲染路径(如启用/禁用硬件加速)。
- 性能占用异常:用 top/htop 观察 compton 占用,必要时用 cpulimit 临时限制并继续定位触发选项。