xshellcn > Xmanager专栏 > 使用Xmanager或Xshell会话时,打开X程序出现localhost报错的解决方法

使用Xmanager或Xshell会话时,打开X程序出现localhost报错的解决方法

发布时间:2021/09/02 11:13:14

我们可以通过Xmanager 7(Win系统)中的Xstart会话或者Xshell(Win系统)中的SSH会话来运行X应用程序(例如 Xterm),这里的Xterm是一个X Window系统上的终端模拟器,也是我们会用的比较多的X应用之一。

图1:Xterm的安装
图1:Xterm的安装

有关Xterm的安装与使用方法在之前已经有所介绍,有需要的朋友可以查看文章《如何在Linux系统上安装Xterm应用》,这里我们就不再赘述了。

在通过Xshell会话运行X程序时,我们可能会看到如下图“Can’t open display:localhost:16.0”这样的错误消息。

图2:Xterm错误信息localhost:16.0
图2:Xterm错误信息localhost:16.0

出现这个错误的原因有很多种。

  1. 手动设置DISPLAY环境变量时出错

DISPLAY环境变量可以告诉X程序在X Window系统中将图形显示到何处,

Linux系统下DISPLAY环境变量的设置方法;

[root@localhost ~]# export DISPLAY= ip地址 :0.0

[root@localhost ~]# xhost +access control disabled, clients can connect from any host

[root@localhost ~]#

图3:DISPLAY环境变量的手动设置
图3:DISPLAY环境变量的手动设置

除非我们对DISPLAY环境变量的各项设置有足够的了解,否则不要手动来设置。可以直接使用shell脚本进行DISPLAY变量设置。shell脚本和命令行都能操作linux,但是shell是面向过程的,相当于有了一定的逻辑和过程,而命令行只是单一的操作。

.bash_profile(Linux)、.bashrc(Linux)、.profile(Linux)、.login(Linux)、.cshrc(Linux)、.zshrc等脚本都是Linux中可用的,使用哪个脚本取决于我们安装的shell环境。

若不清楚当前Linux系统下所使用的shell环境,可以使用以下方法:

  1. 查看当前使用的shell:

chao@chao:~$ echo $0

bash

  1. 查看当前用户(默认)使用的shell:

chao@chao:~$ echo $SHELL

/bin/bash

在知道当前使用的shell后,若不清楚可以参考shell环境的帮助文档。

  1. 本地主机设置不正确

需要在/etc/hosts文件中将localhost设置为 127.0.0.1 。

在极少数情况下,未注册 localhost 可能会将它设置为不同的值。这时我们就需要使用root权限编辑文件。

图4:在hosts文件中设置localhost
图4:在hosts文件中设置localhost

以上先给大家介绍了Xmanager与Xshell中运行X程序报错的2个可能的原因,实际情况是不止有这两中原因的,在下一篇中我们会继续为大家介绍更多其他的原因,大家如果想要了解更多使用Xshell连接服务器的使用技巧,敬请关注Xshell中文网

作者:∅

标签:X程序报错Xtermlocalhost:16.0

读者也访问过这里: