centos

centos compton配置全解析

小樊
34
2025-09-28 18:02:12
栏目: 智能运维

CentOS Compton配置全解析

一、Compton简介

Compton是一款轻量级窗口合成器,主要用于X11环境(部分版本支持Wayland),可实现窗口阴影、透明度、淡入淡出等视觉效果,同时保持较低的系统资源占用,适合搭配i3、Openbox等轻量级窗口管理器或GNOME、KDE等桌面环境使用。

二、安装Compton

1. 准备工作

确保系统已更新至最新版本,并安装必要依赖(以CentOS 7/8为例):

sudo yum update -y  # CentOS 7
# 或 sudo dnf update -y  # CentOS 8+
sudo yum groupinstall -y "Development Tools"  # 安装开发工具链
sudo yum install -y cmake git libX11-devel libXext-devel libXrender-devel libXi-devel libXrandr-devel libXinerama-devel libXcursor-devel libXcomposite-devel libxdamage-devel libxtst-devel  # 安装依赖库

2. 安装Compton

三、配置Compton

1. 配置文件位置

Compton的默认配置文件路径为~/.config/compton.conf(用户级配置),若文件不存在可手动创建。系统级配置文件通常位于/etc/compton.conf,但建议优先使用用户级配置。

2. 基本配置示例

以下是一个兼顾视觉效果与性能的基础配置(适用于X11环境):

# 后端选择(glx适用于X11,wayland适用于Wayland,优先选glx)
backend = "glx";

# 阴影设置
shadow = true;  # 启用阴影
shadow-offset-x = 5;  # 阴影水平偏移量
shadow-offset-y = 5;  # 阴影垂直偏移量
shadow-radius = 15;  # 阴影模糊半径
shadow-color = "rgba(0, 0, 0, 0.3)";  # 阴影颜色(RGBA格式)

# 阴影排除规则(避免某些窗口显示阴影,如Firefox、对话框)
shadow-exclude = [
    ".*",  # 默认排除所有窗口
    "[class='^Firefox$']",  # 排除Firefox
    "[class='^Chromium$']",  # 排除Chromium
    "[title='.*Firefox.*']",  # 排除标题包含Firefox的窗口
    "[title='.*Chromium.*']"  # 排除标题包含Chromium的窗口
];

# 透明度设置
alpha-mode = "screen";  # 透明度模式(screen适用于大多数场景)
alpha-ignores = [
    "[class='^Firefox$']",  # 排除Firefox的透明度
    "[class='^Chromium$']"  # 排除Chromium的透明度
];
inactive-opacity = 0.9;  # 非活动窗口透明度(0~1,1为不透明)
active-opacity = 1.0;  # 活动窗口透明度

# 性能优化
vsync = true;  # 启用垂直同步(减少屏幕撕裂)
frame-rate = 60;  # 帧率限制(默认0为无限制,建议设为显示器刷新率)
glx-no-stencil = true;  # 禁用模板缓冲区(提升性能)
glx-copy-from-front = true;  # 从前面复制像素(减少渲染开销)

3. 常用配置选项说明

选项 作用 推荐值
backend 合成后端(glx/xrender/wayland),glx性能最佳,wayland适用于Wayland会话 glx(X11)、wayland(Wayland)
shadow 是否启用窗口阴影 true/false
shadow-exclude 排除阴影的窗口规则(支持正则表达式) 排除浏览器、对话框等
alpha-mode 透明度模式(none/screen/overlay),screen适用于大多数场景 screen/none
inactive-opacity 非活动窗口透明度 0.8~0.9
vsync 是否启用垂直同步(减少屏幕撕裂) true
frame-rate 帧率限制(0为无限制) 60(匹配显示器刷新率)
backend-option 后端特定选项(如glx-no-stencil、glx-copy-from-front) 根据需求调整

四、启动与管理Compton

1. 手动启动

通过命令行启动Compton(需指定配置文件路径):

compton -c ~/.config/compton.conf  # 使用自定义配置文件
# 或 compton  # 使用默认配置

2. 开机自启动

创建Systemd服务文件实现开机自启动:

sudo nano /etc/systemd/system/compton.service

添加以下内容(根据实际配置文件路径调整):

[Unit]
Description=Compton Window Composer
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  # 多用户模式下启动

保存后执行以下命令启用并启动服务:

sudo systemctl daemon-reload  # 重新加载Systemd配置
sudo systemctl enable compton  # 启用开机自启动
sudo systemctl start compton   # 立即启动Compton

3. 状态检查

查看Compton运行状态:

systemctl status compton  # 查看服务状态
journalctl -u compton -f  # 实时查看日志(调试用)

五、常见问题与优化

1. 性能问题

若出现卡顿,可通过以下方式优化:

2. 兼容性问题

3. 日志调试

若遇到问题,可通过以下命令查看详细日志:

compton --verbose > /tmp/compton.log 2>&1 &  # 输出日志至/tmp/compton.log
journalctl -u compton -f  # 查看Systemd日志

通过以上步骤,可在CentOS上完成Compton的安装与配置,实现窗口视觉效果的优化。根据实际硬件配置与使用需求,可进一步调整配置选项以平衡效果与性能。

0
看了该问题的人还看了