温馨提示×

Compton在Ubuntu下怎样配置多屏显示

小樊
34
2025-12-14 08:27:21
栏目: 智能运维

Ubuntu下使用 Compton 配置多屏显示

一 核心要点

  • Compton 不负责多显示器的连接与布局,多屏的扩展/镜像、分辨率与位置应由 X11 的 xrandr 或桌面环境的显示设置完成;Compton 只作为 X11 合成器提供阴影、透明度、模糊等效果。先确保多屏已在系统中正确布局,再启动 Compton 即可在多屏上生效。

二 步骤一 配置多屏布局

  • 查看显示器名称与状态:
    • 运行:xrandr --query
    • 输出示例:eDP-1 connected primary 1920x1080+0+0HDMI-1 connected 2560x1440+1920+0
  • 设置扩展/镜像与相对位置(示例将外接屏放在主屏右侧):
    • 扩展右侧:xrandr --output HDMI-1 --auto --right-of eDP-1
    • 扩展左侧:xrandr --output HDMI-1 --auto --left-of eDP-1
    • 克隆显示:xrandr --output HDMI-1 --same-as eDP-1 --auto
    • 指定分辨率:xrandr --output HDMI-1 --mode 1920x1080
    • 关闭显示器:xrandr --output HDMI-1 --off
  • 图形界面方式:在 系统设置 → 显示 中拖拽排列显示器,选择 扩展镜像,设置 分辨率/旋转 后应用。以上命令与界面操作适用于 Ubuntu 的常规桌面环境。

三 步骤二 安装并配置 Compton

  • 安装 Compton(若已安装可跳过):
    • Ubuntu/Debian:sudo apt update && sudo apt install compton
  • 生成基础配置(仅首次):
    • mkdir -p ~/.config && cp /etc/xdg/compton.conf ~/.config/compton.conf(若系统自带示例配置)
    • 或新建:nano ~/.config/compton.conf
  • 建议的多屏基础配置(示例):
    • 说明:使用 GLX 后端、开启 VSync、限制 60 FPS,并对常见终端/浏览器关闭阴影以减少多屏开销。
    • 文件内容:
      backend = "glx"
      vsync = true
      fps-limit = 60
      
      shadow = true
      shadow-exclude = [
        "class_g = 'gnome-terminal'",
        "class_g = 'konsole'",
        "class_g = 'xterm'",
        "class_g = 'Firefox'"
      ]
      
      # 可选:若遇到特定程序渲染异常,可尝试关闭相关特性
      # glx-no-stencil = true
      # glx-copy-from-front = true
      
  • 手动测试启动:
    • compton --config ~/.config/compton.conf --replace &
    • 观察是否无报错、阴影/透明度是否按预期在多屏生效。

四 步骤三 设置开机自启动

  • 会话级自启(推荐,适用于大多数桌面会话/窗口管理器):
    • 系统设置 → 启动应用程序 中添加命令:compton --config ~/.config/compton.conf --replace
  • systemd 用户级服务(可选,避免与登录会话重复启动):
    • 创建:nano ~/.config/systemd/user/compton.service
    • 内容:
      [Unit]
      Description=Compton Compositor
      After=graphical-session.target
      
      [Service]
      ExecStart=/usr/bin/compton --config %h/.config/compton.conf --replace
      Restart=on-failure
      
      [Install]
      WantedBy=default.target
      
    • 启用并启动:
      systemctl --user daemon-reload
      systemctl --user enable --now compton.service
      
  • 注意:若使用显示管理器登录,优先采用“会话级自启”;systemd 方式需确保会话环境已就绪,避免与桌面自启重复。

五 常见问题与优化

  • 多屏撕裂或卡顿:启用 vsync = true,并将 fps-limit 设为显示器刷新率(如 60);性能不足时可关闭阴影或对特定应用排除阴影(见配置示例)。
  • 只在某一屏生效或效果异常:检查是否使用了桌面自带的合成器(如某些 GNOME Shell 扩展),建议仅保留一个合成器;必要时用 compton --replace 接管。
  • 热插拔/唤醒后布局变化:使用桌面“显示”工具重新对齐并保存;部分环境可通过工具/脚本在登录时恢复布局(如 monitors.xml 方案)。
  • 驱动与兼容性:确保 GPU 驱动正确安装(开源/专有按硬件选择),并在 Wayland 会话下 Compton 不会生效(Compton 仅适用于 X11)。

0