温馨提示×

compton在centos的配置秘诀

小樊
35
2026-01-02 09:04:34
栏目: 智能运维

Compton 在 CentOS 的配置秘诀

一 安装与运行

  • CentOS 7/8 上可直接用包管理器安装:sudo yum install -y compton(或 sudo dnf install -y compton)。安装完成后可用命令 compton -c ~/.config/compton.conf 启动。若需临时前台运行便于排错,可直接执行 compton 并观察输出。为便于后续维护,建议将配置文件放在用户目录:mkdir -p ~/.config && nano ~/.config/compton.conf。

二 配置文件骨架与关键参数

  • 建议以“最小可用 + 可逐项开启特效”的思路配置,优先保证稳定与性能,再逐步叠加效果。
  • 示例骨架(写入 ~/.config/compton.conf):
    # 渲染与同步
    backend = "glx"
    vsync = true
    refresh-rate = 0
    
    # 阴影
    shadow = true
    shadow-radius = 12
    shadow-offset-x = -15
    shadow-offset-y = -15
    shadow-opacity = 0.30
    shadow-exclude = [
      "name = 'Notification'",
      "class_g = 'Conky'",
      "class_g = 'Polybar'",
      "_GTK_FRAME_EXTENTS@:c"
    ]
    
    # 淡入淡出
    fade = true
    fade-in-step = 0.03
    fade-out-step = 0.03
    fade-exclude = [ "name = 'Dock'" ]
    
    # 透明度与忽略
    opacity-rule = [
      "90:class_g = 'URxvt'",
      "0.85:class_g = 'Firefox'"
    ]
    
    # 模糊(可选,性能开销较大)
    # blur-background = true
    # blur-kern = "3x3box"
    # blur-radius = 3
    
    # 窗口重定向(游戏/全屏优化)
    unredirect-drawable = true
    unredirect-skip-argb = true
    
    # 日志(排错用)
    # log-level = "warn"
    # log-file = "/tmp/compton.log"
    
  • 关键参数说明
    • backend:优先用 glx(OpenGL),在部分老旧显卡或驱动不佳时可尝试 xrender。
    • vsync:多数桌面建议开启以减少撕裂;若出现卡顿可尝试关闭测试。
    • shadow-exclude/opacity-rule:用规则精准控制哪些窗口要阴影/透明,避免对 通知、面板、Dock 等造成副作用。
    • unredirect:对全屏游戏/视频可开启以提升帧率,但可能导致叠加层失效(如截图、部分特效)。

三 自启动与多显示器

  • 使用 systemd 用户服务实现登录即启(推荐):
    1. 创建服务文件:nano ~/.config/systemd/user/compton.service
    2. 写入内容:
      [Unit]
      Description=Compton compositor
      After=graphical-session.target
      
      [Service]
      ExecStart=/usr/bin/compton --config %h/.config/compton.conf
      Restart=on-failure
      Environment=DISPLAY=:0
      
      [Install]
      WantedBy=default.target
      
    3. 启用并启动:
      systemctl --user daemon-reload
      systemctl --user enable --now compton.service
      
  • 多显示器与 DPI
    • 先用 xrandr 检查与设置多屏:xrandr --query;必要时用 xrandr --output HDMI-1 --auto --right-of eDP-1 等命令排布。
    • 若出现缩放或模糊异常,可在 compton 配置中调整 refresh-rate、shadow-radius、blur-radius,或对特定显示器使用 xrandr 的变换/缩放后再微调 Compton 参数。

四 性能优化与常见问题

  • 性能优化要点
    • 优先使用 backend = “glx”;如遇问题再测试 xrender。
    • 不需要时关闭阴影(shadow = false)或模糊(blur-background = false),对性能影响最大。
    • 对全屏 3D/视频应用启用 unredirect,减少合成开销。
    • 用 opacity-rule 精确指定需要透明的应用,避免全局透明带来的重绘与功耗。
    • 通过 log-level/log-file 定位问题,逐步增减特效以找出瓶颈。
  • 常见问题速解
    • 启动失败或黑屏闪屏:回退 backend 到 xrender;关闭阴影/模糊;检查日志定位非法规则。
    • 撕裂:开启 vsync;若仍撕裂,尝试关闭 vsync 并配合显卡驱动的自适应同步(如支持的机型)。
    • 高 CPU 占用:减少阴影/模糊半径;关闭淡入淡出;对重载应用使用 unredirect;必要时用 cpulimit 临时限制进程占用(仅作临时手段)。

0