centos

如何配置centos上的compton

小樊
35
2025-10-03 00:49:17
栏目: 智能运维

如何在CentOS上配置Compton

一、安装Compton

  1. 更新系统包
    首先更新系统包列表,确保后续安装依赖项时不会出现冲突:

    sudo yum update -y  # CentOS 7
    sudo dnf update -y  # CentOS 8/Stream
    
  2. 安装EPEL仓库(可选但推荐)
    若Compton未包含在默认仓库中,需安装EPEL(Extra Packages for Enterprise Linux)仓库:

    sudo yum install epel-release -y
    
  3. 安装Compton
    根据CentOS版本选择包管理器:

    • CentOS 7及以下
      sudo yum install compton -y
      
    • CentOS 8/Stream及以上
      sudo dnf install compton -y
      

    注意:若仓库中无Compton,需从源码编译安装(参考后续故障排除部分)。

二、配置Compton

  1. 创建/编辑配置文件
    Compton的配置文件优先级为:用户级配置 > 系统级配置。推荐在用户目录下创建配置文件(避免影响全局设置):

    mkdir -p ~/.config
    nano ~/.config/compton.conf
    
  2. 常用配置参数说明
    以下是一个优化后的配置示例,涵盖基础效果、视觉效果及性能调整:

    # 后端设置(决定合成方式,glx性能更好,xrender兼容性更强)
    backend = "glx"
    
    # 阴影设置(调整阴影的偏移、模糊半径及颜色)
    shadow = true
    shadow-radius = 12
    shadow-offset-x = -15
    shadow-offset-y = -15
    shadow-color = "rgba(0, 0, 0, 0.5)"
    shadow-exclude = [  # 排除不需要阴影的窗口(如通知栏、Conky)
        "name = 'Notification'",
        "class_g = 'Conky'",
        "class_g = 'Notify-osd'"
    ]
    
    # 透明度设置(调整非活动窗口、标题栏的透明度)
    inactive-opacity = 0.8
    active-opacity = 1.0
    frame-opacity = 0.7
    opacity-rule = [  # 自定义应用程序透明度(如终端、浏览器)
        "90:class_g = 'Alacritty'",
        "80:class_g = 'Firefox'"
    ]
    
    # 淡入淡出效果(开启/关闭及动画速度)
    fading = true
    fade-delta = 5
    fade-in-step = 0.03
    fade-out-step = 0.03
    fade-exclude = []
    
    # 性能优化(减少GPU/CPU占用)
    glx-no-stencil = true
    glx-no-rebind-pixmap = true
    xrender-sync-fence = true
    unredir-if-possible = true  # 不重定向静态窗口(如桌面图标),提升性能
    
  3. 应用配置更改
    保存配置文件后,重启Compton使设置生效:

    pkill compton && compton -b  # 停止现有进程并以后台模式启动
    

    提示:若需调试配置,可前台运行Compton查看实时输出:

    compton --config ~/.config/compton.conf
    

三、设置Compton开机自启动

  1. 创建systemd服务文件
    通过systemd管理Compton服务,实现开机自动启动:

    sudo nano /etc/systemd/system/compton.service
    
  2. 添加服务配置
    将以下内容粘贴到文件中(替换your-username为实际用户名):

    [Unit]
    Description=Compton Window Compositor
    After=display-manager.service
    
    [Service]
    ExecStart=/usr/bin/compton -c /home/your-username/.config/compton.conf
    Restart=on-failure
    User=your-username
    
    [Install]
    WantedBy=multi-user.target
    
  3. 启用并启动服务

    sudo systemctl daemon-reload  # 重新加载systemd配置
    sudo systemctl enable compton  # 设置开机自启动
    sudo systemctl start compton   # 立即启动服务
    
  4. 验证服务状态
    检查Compton是否已成功启动:

    sudo systemctl status compton
    

    若显示“active (running)”,则表示服务已正常运行。

四、常见问题排查

  1. Compton无法启动

    • 确认显卡驱动已正确安装(尤其是NVIDIA/AMD专有驱动),并支持OpenGL合成。
    • 若使用Wayland,需将backend改为wayland(但Compton对Wayland的支持有限,建议切换至X11)。
  2. 屏幕撕裂
    调整垂直同步设置,尝试以下参数之一:

    vsync = "opengl-swc"  # 推荐,适用于大多数情况
    vsync = "opengl"      # 备选
    vsync = "drm"         # 适用于支持DRM的系统
    
  3. 高CPU使用率
    启用性能优化参数,降低GPU负载:

    glx-no-stencil = true
    glx-no-rebind-pixmap = true
    paint-on-overlay = true  # 减少渲染层级
    
  4. 特定应用程序显示异常
    shadow-excludeopacity-rule中添加排除规则,例如:

    shadow-exclude = [ "class_g = 'YourApp'" ]
    opacity-rule = [ "100:class_g = 'YourApp'" ]  # 强制设置为不透明
    

通过以上步骤,你可在CentOS上完成Compton的安装与配置,实现窗口透明、阴影等视觉效果,并根据需求优化性能。

0
看了该问题的人还看了