温馨提示×

Debian下Compton设置技巧

小樊
35
2025-12-12 21:51:18
栏目: 智能运维

Debian 下 Compton 设置技巧

一 安装与快速上手

  • Debian 上安装:执行 sudo apt update && sudo apt install compton。安装完成后,配置文件通常位于 ~/.config/compton.conf,如不存在可手动创建。使用 nano ~/.config/compton.confvim ~/.config/compton.conf 编辑。启动/重启 Compton 可用:killall compton && compton &;如需常驻,可将其加入会话自启(如 i3 的 exec --no-startup-id compton)。以上步骤适用于 Openbox、i3 等窗口管理器。

二 核心配置与示例

  • 常用选项与作用
    • backend:渲染后端,优先用 glx(OpenGL,性能好),兼容性差时改用 xrender
    • vsync:垂直同步,设为 true 可减少撕裂,低帧场景可尝试 false 降低输入延迟。
    • shadow:窗口阴影,设为 false 可显著降低开销。
    • opacity / alpha / opacity-rule:整体或按窗口设置透明度;如 opacity-rule = [ "90:name *? 'Firefox'", "90:name *? 'Terminal'", "100:class_g 'Xephyr'" ]
    • blur-background / blur-kern:背景模糊,如 blur-background = true; blur-kern = "3x3box"(轻量模糊)。
    • shadow-exclude:排除不需要阴影的窗口,如通知、菜单、dock 等。
  • 最小可用示例(保存为 ~/.config/compton.conf
    backend = glx
    vsync = true
    shadow = true
    fade = true
    opacity-rule = [
      "90:name *? 'Firefox'",
      "90:name *? 'Terminal'",
      "100:class_g 'Xephyr'"
    ]
    shadow-exclude = [
      "name 'Notification'",
      "class_g ? 'Dmenu'",
      "class_g ? 'Dunst'",
      "_NET_WM_STATE@:32a * '_NET_WM_STATE_HIDDEN'",
      "_GTK_FRAME_EXTENTS@:c"
    ]
    # 可选:背景模糊
    # blur-background = true
    # blur-kern = "3x3box"
    
    修改后执行 killall compton && compton & 生效。

三 性能优化与故障排查

  • 性能优化
    • 优先选择 backend = glx;若遇到画面异常或驱动问题,再退回 xrender
    • 关闭不必要的特效:将 shadow = false、减少/移除 opacity 与模糊,可显著降低 CPU/GPU 占用。
    • 控制资源占用:用 cpulimit 限制 Compton 的 CPU 使用率,例如 cpulimit -l 50 -p $(pgrep compton)(将上限设为 50%)。
  • 故障排查
    • 检查运行状态:ps -e | grep compton;无输出则未运行。
    • 快速重载:killall compton && compton &;若配置有误,终端会输出错误信息,按提示修正。
    • 若出现撕裂或卡顿,切换 vsync(true/false)并观察效果;不同显示器与驱动组合表现可能不同。

四 进阶用法

  • 使用 Systemd 管理(可选)
    • 创建服务文件 /etc/systemd/system/compton.service
      [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
  • 窗口规则与特效微调
    • 通过 opacity-rule 精确控制不同应用透明度;用 shadow-exclude 精细排除阴影,避免通知、菜单、dock 等产生阴影或渲染异常。
    • 需要轻度背景模糊时启用 blur-background 与合适的 blur-kern;在低端显卡上建议关闭以获得更稳定的帧率。

0