使用“xhost”在不同的Linux计算机上运行软件

与基于Windows的家庭计算机的典型使用形成对比,在Linux / Unix环境中,“在网络上”工作一直是常态,这解释了Unix和Linux操作系统的强大网络功能。 Linux支持到其他计算机的快速和稳定连接,并通过网络运行图形用户界面。

执行这些网络活动的主要命令是xhost -用于X的服务器访问控制程序 程序用于添加和删除主机(计算机)名称或用户名到允许连接到X服务器的机器和用户列表。 该框架提供了隐私控制和安全的基本形式。

使用场景

让我们称你坐在“本地主机”的计算机和你想连接到“ 远程主机 ”的计算机。 你首先使用xhost 指定要授予连接到(本地主机的X服务器)权限的计算机。 然后使用telnet连接到远程主机。 接下来,您在远程主机上设置DISPLAY变量。 您想要将此DISPLAY变量设置为本地主机。 现在,当您在远程主机上启动一个程序时,它的GUI将显示在本地主机上(不在远程主机上)。

示例用例

假设本地主机的IP地址为128.100.2.16,远端主机的IP地址为17.200.10.5。 根据您所在的网络,您也可以使用计算机名称(域名)而不是IP地址。

第1步。在localhost的命令行中输入以下内容:

%xhost + 17.200.10.5

第2步。登录到远程主机:

%telnet 17.200.10.5

步骤3.在远程主机上(通过telnet连接),通过键入以下命令指示远程主机在本地主机上显示窗口:

%setenv DISPLAY 128.100.2.16:0.0

(而不是setenv你可能不得不使用某些shell的导出。)

第4步。现在可以在远程主机上运行软件。 例如,在远程主机上键入xterm时,应该在本地主机上看到一个xterm窗口。

第5步。完成后,您应按如下方式从您的访问控制列表中删除远程主机。 在本地主机上输入:

%xhost - 17.200.10.5

快速参考

xhost命令只包含一些变体,以帮助您进行网络连接:

由于Linux发行版和内核版本级别不同,请使用man命令( %man )来查看xhost 在您的特定计算环境中实施。