AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 678433
Accepted
Stonecraft
Stonecraft
Asked: 2021-11-21 14:34:59 +0800 CST2021-11-21 14:34:59 +0800 CST 2021-11-21 14:34:59 +0800 CST

如何将 X 窗口定位到辅助监视器?(并且知道为了做到这一点它被称为什么)

  • 772
  • 我有两台显示器(一台 HDMI,一台 DVI)连接到我的 linux 盒子上的 Nvidia GT710 GPU。

  • 当我通过 ssh 登录到我的盒子时,如果我运行xeyes它,它将始终在同一个屏幕上运行。

  • 我知道这个屏幕的名称,因为echo $DISPLAY返回:0

根据我读过的一些内容,我希望能够分别使用:0.0和将 X 窗口定位到我的左右显示器:0.1。对:1. DISPLAY=:0.0 xeyes确实确实在左侧屏幕上显示了 xeyes,但是:

~$ DISPLAY=:0.1 xeyes
Error: Can't open display: :0.1

我想也许我可以通过列表看到我的右显示器的名称,/tmp/.X11-unix/但是:

~$ ls /tmp/.X11-unix/
X0

那么我该如何处理这个辅助显示器并知道如何处理它呢?

PS。我不在乎是否不能在屏幕之间移动窗口,如 ArchWiki 中所述:https ://wiki.archlinux.org/title/Multihead#Separate_screens 。这对我来说很好,但我不清楚如何实现这一目标。

xorg x11
  • 1 1 个回答
  • 536 Views

1 个回答

  • Voted
  1. Best Answer
    dirkt
    2021-11-21T23:11:45+08:002021-11-21T23:11:45+08:00

    我希望能够使用 :0.0 和 :0.1 将 X 窗口定位到我的左右显示器

    这仅适用于您的左右显示器实际上会使用两个X 屏幕,除非您自己配置,否则您通常不会看到它。

    开箱即用,今天的大多数系统都使用Xinerama,这意味着您可以获得一个X 屏幕,其中两个xrandr输出从不同位置的相同帧缓冲区读取。

    但只有您可以告诉我们您的系统是如何配置的(阅读/var/log/Xorg.log以了解)。

    错误:无法打开显示::0.1

    这证实了上面的假设:您没有两个 X 屏幕。

    那么我该如何处理这个辅助显示器并知道如何处理它呢?

    查看 的输出xrandr,看看是否有两个输出连接到同一个帧缓冲区(即,所有输出都列在 下Screen 0)。

    如果是,这意味着您需要在某个位置放置一个窗口,以使其显示在左侧或右侧监视器上(或同时显示在左侧或右侧,一半在左侧,另一半在右侧)。

    您的窗口管理器(WM),在大多数现代发行版中集成在您的桌面环境中,可以影响窗口的位置,并且通过正确配置它,它可以帮助将其放置在您想要的位置(并因此监控)。

    许多(但不是全部)X 应用程序也支持该-geometry选项(阅读手册页),它再次将窗口放置在某个位置,但 WM 可以自由地覆盖它,所以如果它不起作用,那就是原因。


    如果您没有运行现代桌面系统,并且您甚至不打算使用窗口管理器(甚至几十年前每个人都这样做了;X意味着有一个窗口管理器),那么您需要定位和调整每个窗口的大小单独通过命令行(这也将确定它们出现在当前设置中的哪个屏幕上);你将无法调整窗口大小或移动窗口等(如果你能做到这一点,那么即使你没有意识到这一点,你也会在某处拥有一些 WM)。

    您还可以设置 X,使其使用两个屏幕,一个用于每个输出。您需要一个自定义xorg.conf文件。这是我用于英特尔硬件的文件,其中一个屏幕用于 HDMI3(当我不久前连接我的电视时,这就是为什么有两个屏幕是有意义的):

    Section "Device"
            Identifier "intel0"
            Driver "intel"
            Option "AccelMethod" "sna"
            Option "ZaphodHeads" "VGA1,HDMI1,DP1"
            Screen 0
    EndSection
    
    Section "Device"
            Identifier "intel1"
            Driver "intel"
            Option "AccelMethod" "sna"
            Option "ZaphodHeads" "HDMI3"
            Screen 1
    EndSection
    
    Section "Screen"
            Identifier "screen0"
            Device "intel0"
    EndSection
    
    Section "Screen"
            Identifier "screen1"
            Device "intel1"
    EndSection
    
    Section "ServerLayout"
            Identifier "default"
            Screen "screen0" 0 0
            Screen "screen1" Below "screen0"
    EndSection
    

    您需要根据您的硬件和要求进行调整;不同的硬件可能需要不同的选项(例如,当时我这样做时,英特尔硬件需要 AccelMethod 和 ZaphodHeads)。期望花费相当多的时间来完成这项工作。

    • 1

相关问题

  • xrdb 冒号丢失错误

  • 在不改变分辨率的情况下让事情变得更大?[伴侣]

  • 如何在 Linux 中禁用硬件加速?

  • SSH X11 转发仅在使用受信任时有效

  • base 和 evdev xkb 规则有什么区别?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve