了解linux DISPLAY变量
问题描述:
我是Linux新手,为了运行java应用程序,我不得不设置DISPLAY变量。不知怎的,我设法做到这一点,我明白,可以使用设置显示了解linux DISPLAY变量
<host>:<display>[.<screen>]
但我在做什么是:1001。
现在这1001是这个linux的第1001个显示器吗?这是很多显示可能在一台机器或我的理解是错误的?
答
当在同一主机上的X Window服务器下运行时,DISPLAY值通常类似于:0
,:0.0
等。像:1001
这样的大数字通常用于SSH传递X连接。这些数字真的被加密到6000以获得TCP端口号;本地的以6000开始,SSH通过的可以从7000开始。(这种增加在不同系统中是不同的,例如10或100也是可能的。)
只要这些值被动态分配,就应该获得值对于现有连接环境中的DISPLAY,只要适当的授权令牌也可用(例如在〜/ .Xauthority中)。
答
DISPLAY
变量被X11用于识别您的显示器(以及键盘和鼠标)。通常在桌面PC上是:0
,指的是主监视器等。
如果您使用的SSH与X转发(ssh -X otherhost
),那么它将被设置为类似localhost:10.0
。这告诉X应用程序发送它们的输出,并从TCP端口127.0.0.1:6010
接收它们的输入,SSH将转发回原来的主机。
而且,当天早些时候,当“瘦客户端”计算意味着X terminal时,通常有数百台显示器连接到同一主机。