![X11 转发在 Windows 上通过 Xming 和 Putty 工作,但不适用于 ssh 命令行](https://linux22.com/image/596060/X11%20%E8%BD%AC%E5%8F%91%E5%9C%A8%20Windows%20%E4%B8%8A%E9%80%9A%E8%BF%87%20Xming%20%E5%92%8C%20Putty%20%E5%B7%A5%E4%BD%9C%EF%BC%8C%E4%BD%86%E4%B8%8D%E9%80%82%E7%94%A8%E4%BA%8E%20ssh%20%E5%91%BD%E4%BB%A4%E8%A1%8C.png)
我有一个微型 Amazon 实例,我想用它来测试,一切都很顺利,直到标题出现。如果我在 PuTTy 中设置所有信息,打开它并运行“xclock”,一切都会完美运行,它会在我的本地桌面上的 Xming 上打开。但是,如果我运行
ssh xxxxxxx.amazonaws.com xclock
我明白了
Error: Can't open display:
如果我运行
ssh xxxxxxx.amazonaws.com -X DISPLAY=localhost:0:0 xclock
ssh xxxxxxx.amazonaws.com -Y DISPLAY=localhost:0:0 xclock
我再次得到了同样的结果,但仅仅延迟了大约 30 秒。
在 Windows 的 .ssh/config 中,我确实有
ForwardX11 yes
设置,我真的想不出还有什么办法让它工作。PuTTy 工作正常,无论我在命令行上做什么,我都无法获得任何乐趣,这让我发疯了。
我是否可以看到 PuTTy 在某处运行的命令,看看它是否有一些额外的魔力?
我在 Windows 中运行的 ssh 是 MinGW32 的。
答案1
你有没有尝试过
ssh -X username@hostname xclock
通常情况下,DISPLAY
远程机器上的不是 0:0
,但将被自动设置ssh
。
此外,Putty 也有一个命令行模式,你所要做的就是将它的目录添加到你的路径中,然后你就可以执行
plink -X username@hostname xclock