在 MobaXTerm 上运行以下命令:
在 Windows 笔记本电脑上使用 MobaXTerm 终端:
> xhost +ulv78.abc.com
ulv78.abc.com being added to access control list
> ssh -l someuser ulv78.abc.com # RHEL 7.x
SECURITY NOTICE:
Unauthorized use is prohibited. Use of this private computer system is your consent to being recorded and monitored. We reserve the right to seek all remedies for unauthorized use. Evidence of suspected illegal use may be given to law enforcement.
X11 forwarding request failed on channel 0
Last login: Thu Sep 20 12:06:57 2018 from win_host_name
$ bash
$ echo DISPLAY=win_host_name:0.0; export DISPLAY >> .bashrc
$ sudo su - # as root sudoer
$ echo DISPLAY=win_host_name:0.0; export DISPLAY >> .bashrc
$ cd /install_path
$ ./setup
Error: Can't open display: win_host_name:0.0
以上会话有X11 forwarding request failed on channel 0
错误
编辑:
在&中设置DISPLAY
条目。从 MobaXterm 终端连接后,输出如下:.profile
.bashrc
> ssh -l someuser ulv78.abc.com
SECURITY NOTICE:
Unauthorized use is prohibited. Use of this private computer system is your consent to being recorded and monitored. We reserve the right to seek all remedies for unauthorized use. Evidence of suspected illegal use may be given to law enforcement.
X11 forwarding request failed on channel 0
Last login: Thu Sep 20 12:36:54 2018 from win_host_name
$ echo $DISPLAY
win_host_name:0.0
$ xterm
xterm: Xt error: Can't open display: win_host_name:0.0
$
1)如何解决X11转发错误?
2) 我在 ssh 客户端的最后登录信息中看到错误的域名。
X11 转发(作为初始用户)
MobaXTerm 支持 X11 转发,默认开启。
ulv78
如果DISPLAY
在linux 服务器ssh
(请参阅如何通过 SSH 转发 X 以远程运行图形应用程序?有关其工作原理的更多详细信息。正确设置后,您不应自己更改
DISPLAY
环境变量;如果您在登录文件(.bashrc
等)中添加了行来设置它,则必须再次删除它们。你应该看到这样的结果:(现在
user
在远程机器上运行)xterm
在这里用作测试应用程序。它应该出现在您的 Windows 机器上,尽管它是由远程 Linux 机器启动的。它的提示将表明您是user@ulv78
,而不是 MobaXTerm 的初始提示。恭喜,这是第一步。X11 转发正在工作。现在进入高级部分:
以其他用户身份访问 X11 服务器
当您切换到另一个用户(例如
root
)su -
并尝试在同一 X 服务器上运行图形应用程序时,您会发现您的环境变量已经全部消失。这是您必须手动更改DISPLAY
以及使用xauth(1)命令复制 X 凭据的时候(说明基于https://blog.mobatek.net/post/how-to-keep-X11-display-在-su-或-sudo/ 之后):(现在
user
在远程机器上运行)(现在以root身份运行)
该
./setup
应用程序现在将出现在您的 Windows 机器上,就像xterm
之前所做的一样。