温馨提示×

centos compton配置中如何启用双屏显示

小樊
42
2025-12-05 20:39:15
栏目: 智能运维

在 CentOS 上启用双屏显示与 Compton 配置

前置说明

  • Compton 不负责连接或排列显示器,它只负责 X11 下的窗口合成。双屏的扩展/镜像需要在 X11 层面用 xrandr 或桌面环境设置好,之后再启动 Compton 即可同时作用于两块屏幕。Compton 本身对多显示器是原生支持的,无需特殊开关。

步骤一 安装与准备

  • 安装 Compton(根据你的 CentOS 版本选择其一):
    • CentOS 7/8:sudo yum install -y compton
    • CentOS Stream 8/9 或新版本:sudo dnf install -y compton
  • 确认使用 X11(而非 Wayland):
    • 在登录界面点用户名后,点击齿轮图标,选择 GNOME on Xorg(或你的 WM/DE 的 X11 会话)。
    • 登录后验证:echo $XDG_SESSION_TYPE 应输出 x11

步骤二 用 xrandr 配置双屏

  • 查看显示器名称与状态:xrandr --query
    • 常见名称如:eDP-1(笔记本内屏)、HDMI-1DP-1(外接显示器)。
  • 设置双屏扩展(示例把外接屏放在内屏右侧):
    • xrandr --output HDMI-1 --auto --right-of eDP-1
    • 若需镜像:xrandr --output HDMI-1 --auto --same-as eDP-1
    • 其他常用:--left-of--above--below--rotate normal/inverted/left/right
  • 建议将这些命令放入你的桌面会话的启动脚本(如 ~/.xprofile、~/.config/autostart/ 或 WM 的启动配置)以保证每次登录自动生效。

步骤三 配置并启动 Compton

  • 生成配置文件:mkdir -p ~/.config && nano ~/.config/compton.conf
  • 最小可用配置示例(双屏无需额外项,保持默认即可):
    backend = "glx";
    vsync = true;
    shadow = true;
    
    • 说明:Compton 会自动识别 所有已连接的 Xinerama 屏幕;若遇到性能或撕裂问题,可切换 backendxrender,或调整 vsyncshadow 等参数。
  • 手动测试启动:compton -c ~/.config/compton.conf
  • 设置开机自启(推荐用户级服务):
    • 创建:nano ~/.config/systemd/user/compton.service
    • 内容:
      [Unit]
      Description=Compton Window Composer
      After=graphical-session.target
      
      [Service]
      ExecStart=/usr/bin/compton -c %h/.config/compton.conf
      Restart=on-failure
      
      [Install]
      WantedBy=default.target
      
    • 启用并启动:
      systemctl --user daemon-reload
      systemctl --user enable --now compton.service
      
    • 若使用系统级服务,请确保 After=display-manager.service 并正确设置 User=你的用户名

步骤四 验证与常见问题

  • 验证:
    • 检查进程:pgrep -x compton 应返回进程号。
    • 检查日志:journalctl --user -u compton.service -b(或 systemctl --user status compton.service)。
    • 观察双屏是否按 xrandr 的定义正常扩展/镜像,窗口阴影、透明度等合成效果是否生效。
  • 常见问题与处理:
    • 屏幕撕裂或卡顿:将 vsync 设为 true,或尝试 backend "xrender";确保显卡驱动与 OpenGL 正常。
    • 只在单屏生效:确认登录的是 Xorg 会话,且 xrandr 命令在会话启动早期执行;必要时在 ~/.xprofile 中先执行 xrandr 再启动 Compton。
    • 笔记本合盖/热插拔后异常:重新执行 xrandr 调整布局,或重启 Compton:systemctl --user restart compton.service
    • 启动失败:检查配置文件语法(括号、逗号、引号是否匹配),以及 ExecStart 路径是否为 /usr/bin/compton

0