gpt4 book ai didi

x11 - 如何指定显示?

转载 作者:行者123 更新时间:2023-12-03 05:48:54 24 4
gpt4 key购买 nike

当我通过 SSH 运行某些程序时,例如 firefox &,出现错误

Error: no display specified 

我想打开许多显示器,仍然显示每个程序的stdout

初始问题:如何指定显示以获得多显示节目?

Pablo Santa Cruz 给了我以下代码作为解决方案。我不明白。

$ export DISPLAY=yourmachine.yourdomain.com:0.0

$ firefox &

命令中的 yourmachineyourdomain.com 是什么?

最佳答案

X 的工作方式与任何网络程序的工作方式相同。您有一个在特定计算机上运行的某种描述的服务器(在本例中为 X 显示服务器),并且您有 X 客户端(例如 Firefox)尝试连接到该服务器以显示其信息。

通常(在“家用”机器上),客户端和服务器在同一个机器上运行,并且只有一台服务器,但 X 足够强大,不需要发生这种情况。它从一开始就内置了服务器/客户端分离。

这可以让你做一些奇妙的事情,比如登录到地球另一端的盒子(以文本模式),告诉它显示服务器就是你当前所在的盒子,瞧,窗口突然启动了出现在本地。

为了让客户端与用户交互,它需要知道如何找到服务器。有多种方法可以做到这一点。许多客户端允许使用 -display--display 选项来指定它:

xeyes -display paxbox1.paxco.com:0.0

如果没有专门给出显示,许多人会使用 DISPLAY 环境变量。您可以像设置其他变量一样设置此变量:

DISPLAY=paxbox1.paxco.com:0.0; export DISPLAY # in .profile
export DISPLAY=paxbox1.paxco.com:0.0 # in your shell
DISPLAY=paxbox1.paxco.com:0.0 firefox & # for that command (shell permitting)

DISPLAY 变量的第一部分只是显示服务器计算机的地址。它遵循与任何其他 IP 地址相同的规则;它可以是可解析的 DNS 名称(包括 localhost)或特定的 IP 地址(例如 192.168.10.55)。

第二部分是 X 特定的。它给出了要使用的 X“显示器”(X 服务器)编号和屏幕编号。第一个(显示器数量)通常是指包含一个或多个屏幕但具有单个键盘和鼠标(即一个输入流)的一组设备。屏幕编号通常给出该组内的特定屏幕。

一个例子是:

+----------------------------------------+
|paxbox1.paxco.com| |
+-----------------+ |
| |
| +----------+----+ +----------+----+ |
| |Display :0| | |Display :1| | |
| +----------+ | +----------+ | |
| | | | | |
| | +-----------+ | | | |
| | |Screen :0.0| | | | |
| | +-----------+ | | | |
| | +-----------+ | | | |
| | |Screen :0.1| | | | |
| | +-----------+ | | | |
| | +-----------+ | | +-----------+ | |
| | |Screen :0.2| | | |Screen :1.0| | |
| | +-----------+ | | +-----------+ | |
| | +-----------+ | | +-----------+ | |
| | |Screen :0.3| | | |Screen :1.1| | |
| | +-----------+ | | +-----------+ | |
| | +-----------+ | | +-----------+ | |
| | | Keyboard | | | | Keyboard | | |
| | +-----------+ | | +-----------+ | |
| | +-----------+ | | +-----------+ | |
| | | Mouse | | | | Mouse | | |
| | +-----------+ | | +-----------+ | |
| +---------------+ +---------------+ |
| |
+----------------------------------------+

这里您有一台机器 (paxbox1.paxco.com) 和两个显示服务器。第一个有四个屏幕,第二个有两个。那么可能性是:

DISPLAY=paxbox1.paxco.com:0.0
DISPLAY=paxbox1.paxco.com:0.1
DISPLAY=paxbox1.paxco.com:0.2
DISPLAY=paxbox1.paxco.com:0.3
DISPLAY=paxbox1.paxco.com:1.0
DISPLAY=paxbox1.paxco.com:1.1

取决于您希望实际窗口出现的位置以及您想要使用的输入设备。

关于x11 - 如何指定显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/784404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com