DISPLAY =:0.0实际上是什么意思?


45

什么是:0.0真正的意思吗?我知道那:0是第一台在本地计算机上启动的X服务器,:1第二台在等等,等等。但是那.0之后是:0什么呢?是否存在其他组合?(例如:0.0-something

背景:我试图改善的启动脚本大黄蜂目前假定:0是活动显示。如果我切换用户,情况并非如此。因此,我想在将$DISPLAY变量传递给之前先对其进行验证vglclient


2
FWIW,en.wikipedia.org / wiki / X_Window_System#Nomenclature帮助我理解了其中一些术语。这个答案也有有用的信息。
waldyrious

Answers:


52

显示变量的格式为[host]:<display>[.screen]

host 指网络主机名,如果不存在,则指通过Unix域套接字连接到本地计算机。

每个主机可以具有多个显示器,并且每个显示器可以具有多个屏幕。屏幕已不再使用,xinerama和现在的xrandr将多个屏幕合并为一个逻辑屏幕。


4
谢谢,我也找到了正确的手册页,请Xserver(1)参阅的DISPLAY NAMES部分X(7)。有关详细信息,请参阅该手册页。
Lekensteyn

5
以及如何获取特定主机的可用显示列表?理想情况下,是在我从客户端PC登录到主机的ssh会话中。
con-f-use

3
显示部分还用于X over SSH。为每个启用X转发的新SSH连接分配一个不同的显示,因为这些屏幕在内部对应于TCP端口号偏移量,例如,DISPLAY=localhost:10.0将导致客户端将图形输出定向到主机localhost端口6010。这对于SSH X转发是必需的,因为如果如果您有同一台计算机的多个连接,则程序必须将不同的输出发送到不同的端口,以便SSH服务器可以将X输出转发到正确的目的地。
RAKK

4
@Raza:要打开的TCP端口号是6000 + display_number。对于显示主机:0.0(端口6000)。对于显示主机:10.0(端口6010)。请注意,SSH X11转发是通过端口22而不是X11端口进行的。
卡姆,2015年

1
@Claudiu:DISPLAY =:0将使用Unix域套接字,DISPLAY = localhost:0将使用Internet域套接字(IP)。您的X服务器可能没有在TCP / IP端点上侦听。我不知道默认的Unix域套接字。
卡姆(Camh)2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.