[X11转发仅在首先使用Putty后才在使用Windows 10 cmd-line ssh的Ubuntu上运行

问题描述 投票:0回答:1

注意:如果我使用腻子,并且使用localhost:0.0进行X11转发,则X11转发可以正常工作。我想使用Windows 10命令行ssh使其工作。这是我的步骤。

  • 我的Windows 10计算机和我的Ubuntu计算机在同一本地网络上。
  • 我安装并运行Xming。我的图标托盘中的图标显示Xming Server:0.0
  • 我打开命令窗口(类型cmd
  • 我使用ssh -X mymachine并成功登录。
  • 在我的Ubuntu提示符下,键入
export DISPLAY=localhost:0.0
xcalc
  • 我收到以下消息
No protocol specified
Error: Can't open display: localhost:0.0
  • 我尝试了其他组合(注意:Windows 10计算机位于192.168.1.18上)
export DISPLAY=localhost:0.0
export DISPLAY=192.168.1.18:0.0
export DISPLAY=192.168.1.18:0
export DISPLAY=10:0.0
export DISPLAY=10:0.0.1

我什至尝试在Windows命令窗口中键入以下内容:

set DISPLAY=localhost:0.0
ssh -X mymachine

但是Windows不喜欢那样。我也尝试使用Windows Powershell。没事。我一直收到相同的消息。

ubuntu windows-10 x11 xming
1个回答
0
投票

我终于明白了。我再次使用Putty并检查了$ DISPLAY变量,然后得到:

echo $DISPLAY
localhost:10.0

我只是使用了值10.0,它对于cmd-shell和Powershell都有效。

但是得到这个...第二天(在两台机器上重新启动后),我尝试了相同的操作,但是没有用。

我使用了ssh -X mymachine并登录类型xcalc会收到错误消息我的$ DISPLAY已设置在我的.bash_profile中,因此无需重置它。

然后我再次尝试了Putty,它成功了,并且$ DISPLY设置为localhost:10.0

然后我回到打开的cmd-shell并键入xcalc,它可以正常工作。之前,我没有在该Shell窗口中执行任何操作。这是输出

adrian@MyMachine:~$ xcalc
Error: Can't open display: localhost:10.0
adrian@MyMachine:~$ echo $DISPLAY
localhost:10.0
adrian@MyMachine:~$ xcalc
adrian@MyMachine:~$

看来Putty在全局范围内执行了一些操作,无需重新加载即可影响其他Shell。怎么了

© www.soinside.com 2019 - 2024. All rights reserved.