x11 - xauth 和 $DISPLAY 问题

标签 x11 xauth udeploy

以下是开发人员用来开始手动部署 Vitria 应用程序的一些步骤。现在我们想了解如何使用 IBM UrbanCode uDeploy 自动执行此过程。

  1. 在“xauth list”输出的多个条目中,“unix:11”中的数字11是什么意思。
  2. 在 $DISPLAY=localhost:11.0 中,这个“11”是什么意思?和上面的“unix:11”有关系吗?这个本地主机是指我的本地 PC 还是远程服务器?
  3. 要使用 UCD 实现自动化,我们将有一个在“pyaz5b”下运行的 UCD 代理,我们还需要做所有这些吗?
  4. 我不明白为什么这里需要 X-Window,因为之后,开发人员只是运行“vdadmin”来进行部署,而不是从 GUI 进行部署。

出于安全原因,以下所有 ID 均已更改。

*******************************************************************************
*                                                                             *
*                                                                             *
*  Welcome to AIX Version 7.1!                                                *
*                                                                             *
*                                                                             *
*  Please see the README file in /usr/lpp/bos for information pertinent to    *
*  this release of the AIX Operating System.                                  *
*                                                                             *
*                                                                             *
*******************************************************************************
[ /users/qhwms3] :~> xauth list
uavitg04/unix:12  MIT-MAGIC-COOKIE-1  c29a18c4363b8b65c78b26bf28ec
uavitg04/unix:13  MIT-MAGIC-COOKIE-1  aaf848b52f00ab4ce30e8d58209a8
uavitg04/unix:10  MIT-MAGIC-COOKIE-1  025d33bb6094e1fac5cbb465333220
uavitg04/unix:11  MIT-MAGIC-COOKIE-1  c20ec7900e35c679f9263ed64ec8c87
[ /users/qhwms3] :~> echo $DISPLAY
localhost:11.0
[ /users/qhwms3] :~> sudo su - pyaz5b
uavitg04:/home/pyaz5b > export DISPLAY=localhost:11.0
uavitg04:/home/pyaz5b > xauth add uavitg04/unix:11  MIT-MAGIC-COOKIE-1  c20ec7900e35c679f92d641ec8c87

最佳答案

1) 您可以在一台机器上运行多个 X 服务器/ session (在本地硬件上,使用虚拟服务器或远程)。这些服务器的编号通常从 0 开始;您的 DISPLAY 变量将是“:0”或“:0.0”。

但是,当通过 SSH 使用 X11 转发时,SSH 守护进程从 10 开始编号。因此您的服务器上有 4 个远程 session ,所有 session 都启用了 X11 转发,编号为 10 到 13。

2) 是的。 X 程序使用 DISPLAY 变量连接到正确的 X 服务器。 MIG-MAGIC-COOKIE 充当密码,因此其他用户无法连接到您的 X session (他们可以通过套接字访问)。

3) 我不能对此发表评论。但是,我发现使用一个帐户 (qhwms3) 登录,然后 sudo 到另一个帐户 (pyaz5b) 并手动添加魔术 cookies 很奇怪。为什么直接登录 pyaz5b(它似乎有一个普通的 shell)?

4) 如果您不是在启动 X 应用程序,那么这一切都不是必需的。然而,一些工具对 X 有一个“隐藏的”依赖;它们可以在命令行和 GUI 模式下运行,后者通过指定命令开关来运行。因此,即使您使用的是命令行界面,它们仍然链接到 X11 库,有时总是打开一个连接。我现在不记得了,几年前有一个流行的工具有这个烦人的习惯;你不能远程运行它,除非你有 X11 转发,即使你不需要 X 服务器。

关于x11 - xauth 和 $DISPLAY 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41290661/

相关文章:

java - 通过 uDeploy 在 Windows 命令行中将 java 作为单独的进程运行

python - 带有框的 pygtk 窗口忽略所有 X(鼠标)事件(通过它们)

使用 twitter4j 的 Android Twitter xAuth 示例

linux - 如何确定 X Windows/Linux 中 Windows 的可见区域?

iphone - Objective-C:如何使用 xAuth?

php - WkHTMLtoPDF 0.12.2.1 PHP exec xvfb-run : Error: xauth command not found

java - 如何从 Urban code Deploy 工作区获取文件

c++ - 如何使用 Xlib 模拟拖动 Action ?

linux - 如何获得 Linux 远程桌面(XDMCP、VNC)