xrandr是Ubuntu下最可靠、最可控的双屏排列方式,不依赖桌面环境,直接操作X11输出;需先用xrandr -q确认设备名(如eDP-1、HDMI-1),再用--right-of/--left-of/--above/--below精确指定相对位置,并配合--auto和--primary确保分辨率与主屏生效。

如何用 xrandr 精确设置双屏左右/上下排列
Ubuntu 下最可靠、最可控的多屏排列方式就是 xrandr,它不依赖桌面环境,直接操作 X11 输出。关键不是“能不能设”,而是“怎么设才不反向/错位”。
先运行 xrandr -q 确认设备名(如 eDP-1、HDMI-1、DP-2),注意区分大小写和连字符;再看各屏当前是否 connected。常见错误是把 LVDS 当作现代笔记本屏名——实际几乎全是 eDP-1 或 eDP-2。
- 右扩展:用
xrandr --output HDMI-1 --right-of eDP-1 --auto,--auto会自动选该屏支持的最高可用分辨率 - 左扩展:把
--right-of换成--left-of,顺序不能反——--left-of eDP-1表示“当前输出设备放在 eDP-1 左边”,不是“eDP-1 放左边” - 上下堆叠:用
--above或--below,比如--above eDP-1表示外接屏在笔记本屏正上方 - 若拖动后鼠标方向反了(比如往右移却跳到左边屏),说明逻辑位置和物理摆放不一致,需重新调整
--right-of/--left-of参数方向
为什么勾选“设为主显示器”在 GNOME 图形界面里有时无效
GNOME 的“显示设置”里勾选“主显示器”本质是调用 xrandr --primary,但它只对当前 session 生效,且容易被后续 xrandr 命令覆盖。更麻烦的是:某些显卡驱动(尤其是 NVIDIA Proprietary 驱动 + Xinerama 启用时)会忽略该标记,任务栏仍出现在旧屏。
真正生效的写法是显式加 --primary 到输出命令末尾:
-
xrandr --output HDMI-1 --right-of eDP-1 --auto --primary→ HDMI-1 成为主屏 -
xrandr --output eDP-1 --auto --primary→ 强制笔记本屏为主,哪怕它分辨率低 - 注意:
--primary必须跟在对应--output后面,不能单独写;多个--primary只最后一个生效 - GNOME 登录后自动加载的配置可能覆盖手动设置,建议把最终命令存为脚本(如
~/dual.sh),并加入开机启动(Startup Applications)
双屏不同 DPI 缩放时 xrandr 的坑与绕过方案
Ubuntu 默认使用 X11,而 X11 不原生支持 per-monitor DPI 缩放。强行用 --scale(如 --scale 1.25x1.25)会导致光标移动速度异常、窗口边缘模糊、甚至部分 Qt 应用崩溃。
Ubuntu 26.04 LTS(代号“Resolute Raccoon”)是Canonical于2026年4月23日发布的下一代长期支持版操作系统,提供长达10年的技术支持。它搭载Linux 7.0内核与GNOME 50桌面环境,全面转向Wayland协议,并引入Rust重写的核心工具以增强安全性。官方提供适用于AMD64和ARM64架构的桌面及服务器ISO镜像,是追求前沿技术与极致稳定的开发者
真实可用的组合只有两种:
- 两屏都用整数缩放(如 100% / 200%):靠
gsettings set org.gnome.desktop.interface scaling-factor 2全局设,然后用xrandr调整分辨率匹配缩放后尺寸 - 混用不同缩放时,必须切换到 Wayland(GNOME 默认已启用),此时
Settings → Displays中可单独为每屏设缩放比例,xrandr在 Wayland 下基本失效,改用wlr-randr(非默认安装) - 不要对高分屏用
--scale 1.5x1.5—— 它会触发 subpixel 渲染错误,文字发虚,且无法被 GTK 正确识别 - 若必须用 X11 混搭缩放,唯一稳定做法是让副屏降级使用整数缩放+较低分辨率(如 1920×1080 @100%),避免拉伸失真
重启后双屏配置丢失的根源和固化方法
每次重启就回到单屏,不是系统“忘记”,而是 xrandr 命令没被持久化。GNOME 的图形设置虽能保存,但常被显卡驱动重置或登录管理器(GDM)覆盖。
推荐固化路径(按优先级排序):
- 写入
~/.xprofile:该文件在 X11 session 启动前执行,比桌面环境早,适合放xrandr命令;注意开头加sleep 1防止设备未就绪 - 避免用
/etc/X11/xorg.conf:现代 Ubuntu 多数情况不需要,且手写易出错;仅当双 GPU(如 Intel+NVIDIA)且需强制输出路由时才考虑 - GNOME 扩展方案:装
Display Configuration扩展,它监听屏幕热插拔事件并自动应用预设布局,比脚本更鲁棒 - 检查
systemd --user是否禁用了用户 session target:某些最小化安装会关掉graphical-session.target,导致.xprofile不执行
最常被忽略的一点:xrandr 命令本身不报错,不代表它真的生效了——务必用 xrandr -q | grep " connected " 确认目标屏状态是 connected (normal left inverted right x axis y axis),而不是 disconnected 或空行。

















