1. 安装Compton
在CentOS上运行Compton的第一步是安装它。首先更新系统包列表:
sudo yum update -y
如果系统未安装EPEL仓库(Extra Packages for Enterprise Linux),需先安装:
sudo yum install epel-release -y
然后通过包管理器安装Compton:
sudo yum install compton -ysudo dnf install compton -y若仓库中没有Compton,可从源码编译安装:
sudo yum groupinstall "Development Tools" -y # 安装开发工具
sudo yum install mesa-libGL-devel mesa-libEGL-devel libX11-devel libXext-devel -y # 安装依赖
git clone https://github.com/channable/compton.git # 下载源码
cd compton
mkdir build && cd build
cmake .. # 配置编译选项
make -j$(nproc) # 编译(使用多核加速)
sudo make install # 安装到系统
2. 配置Compton
Compton的配置文件通常位于~/.config/compton.conf(用户级)或/etc/compton.conf(系统级)。若文件不存在,可手动创建:
mkdir -p ~/.config && nano ~/.config/compton.conf
以下是一个常用配置示例(兼顾性能与效果):
# 后端选择(glx支持OpenGL加速,xrender兼容性更好)
backend = "glx"
# 阴影设置(排除Firefox等不需要阴影的应用)
shadow = true
shadow-exclude = [
".*Firefox.*",
".*Chrome.*",
".*vlc.*"
]
shadow-radius = 10
shadow-offset-x = 2
shadow-offset-y = 2
shadow-color = "rgba(0, 0, 0, 0.5)"
# 透明度设置(禁用窗口透明以提升性能)
opacity = false
alpha-mode = "none"
# 垂直同步(减少屏幕撕裂)
vsync = true
# 性能优化(启用GPU加速、关闭不必要的特效)
glx-no-stencil = true
glx-copy-from-front = true
unredirected-translucent-windows = true
可根据需求调整参数(如关闭shadow、调整shadow-radius等)。
3. 启动Compton
compton -c ~/.config/compton.conf &&表示后台运行)compton --backend glx --shadow-exclude ".*Firefox.*" &。4. 设置开机自启动
为了让Compton在系统启动时自动运行,需创建systemd服务文件:
sudo nano /etc/systemd/system/compton.service
添加以下内容(替换your-username为实际用户名):
[Unit]
Description=Compton Window Compositor
After=display-manager.service # 在显示管理器启动后运行
[Service]
ExecStart=/usr/bin/compton -c /home/your-username/.config/compton.conf
Restart=always # 崩溃后自动重启
User=your-username
[Install]
WantedBy=multi-user.target # 多用户模式下启动
保存后执行以下命令启用并启动服务:
sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl enable compton # 设置开机自启
sudo systemctl start compton # 立即启动
验证服务状态:
sudo systemctl status compton
若显示“active (running)”,则说明启动成功。
5. 常见问题排查
systemctl status compton,查看日志journalctl -u compton -e定位错误。shadow = false)、禁用透明度(opacity = false)、使用glx后端(需显卡支持OpenGL)。-c参数指定),检查桌面环境是否兼容(如GNOME、KDE均支持)。