通过 SSH 运行远程主机上的 X 程序

10
2011
# 作者: riku / 本文采用CC BY-NC-SA 2.5协议授权,转载请注明本文链接

有童鞋在 AskWowUbuntu 上提出了这样一个问题,要求能远程控制主机运行上面的程序,而且不影响远程主机用户的使用,两者互不影响。个人认为如果只是想运行其中某一软件的话,通过 SSH 的 X11forwarding 功能来执行是最简单方便的,所以把方法写在了这里。

1 在远程 Ubuntu 主机上安装 OpenSSH Server

sudo apt-get install openssh-server

确认 /etc/ssh/sshd_config 文件中的 X11Forwarding 为打开 (Ubuntu 上安装后默认是打开的,所以一般不用做调整。)

X11Forwarding yes

如果远程主机没有装 X 的话,只需要安装 xauth 组件就可以了。

sudo apt-get install xauth

2 好了,现在就可以在本地主机上执行以下命令可以运行远程主机上的 X 程序了,记得更改里面的 username , hostip 及 app-name 为你的参数。

ssh -XC username@hostip app-name

X 表示启用 X11 转发,C 表示启用 gzip 压缩。或者也可以用 -Y  参数 (ssh -YC username@hostip app-name ) ,- Y 表示用 Trusted X11 forwardings (信任连接)方式 [参考]。

- 样例:比如我要运行远程主机上的 VirtualBox

ssh -XC riku@192.168.1.2 VirtualBox

当然,运行的时候,调用的文件都是远程主机上的。

[ FAQ ]

1 能不能不要每次都输入密码?

利用 Key 认证方式。输入命令 ssh-keygen 后一直回车产生 SSH key (公钥/密钥),然后 ssh-copy-id username@hostip 来上传公钥,下次就不用输入密码可直接登录了。

2能不能不用每次都输入命令?

可以在桌面上创建一个快捷方式,其中类型必须选择为终端应用程序,命令部分就为 ssh -XC riku@192.168.1.2 VirtualBox 这样的。以后就可以直接点击桌面图标来运行远程主机上的程序了。

作者:riku

Bio: 关注新网络、Web2.0、移动应用;Nexus S/Andorid,iPad,FreeBSD,Ubuntu 用户;伪设计师,好推墙运动。
链接:Blog - Twitter - Facebook - 此作者的更多文章

10 Responses to 通过 SSH 运行远程主机上的 X 程序

Avatar

xndcn

Firefox 3.6.13 Firefox 3.6.13 Ubuntu 10.10 Ubuntu 10.10

三月 10th, 2011 at 5:31 下午

嗯哼,我现在就是在宿舍的破笔记本上,SSH -X到实验室的机器上,开firefox回复的...就是没声音,有什么办法吗?

感谢当年创立X协议的人!

[Reply]

Avatar

xndcn

Firefox 3.6.13 Firefox 3.6.13 Ubuntu 10.10 Ubuntu 10.10

三月 10th, 2011 at 5:38 下午

还有更猛的XDMCP,把整个X桌面都转发过来。以前试过同时4、5人连接服务器,开大型CAD软件,感觉不到丝毫迟滞...

[Reply]

Avatar

snowhawkyrf

Firefox 3.6.15 Firefox 3.6.15 Ubuntu 10.10 Ubuntu 10.10

三月 10th, 2011 at 5:41 下午

方法很好,多谢!不过如果能看到完整的图形界面,能像用自己电脑一样就更好了……实验室有位师兄以前搞定过,是windows连ubuntu,进去后是一个桌面,而ubuntu机器登录后看到的竟然是另外一个桌面,两者互不干扰,还很方便使用。他没开多用户。

[Reply]

Firefox 3.6.13 Firefox 3.6.13 Ubuntu 10.10 Ubuntu 10.10

xndcn Reply:

@snowhawkyrf, XDMCP就是转发完整的图形界面...windows下面用xmanager就行

[Reply]

Avatar

lds

Google Chrome 11.0.672.2 Google Chrome 11.0.672.2 Windows 7 Windows 7

三月 10th, 2011 at 9:28 下午

越来越发现ssh强大了

[Reply]

Avatar

书痕

Google Chrome 9.0.597.94 Google Chrome 9.0.597.94 GNU/Linux GNU/Linux

三月 11th, 2011 at 8:15 上午

果然是相当的犀利阿

[Reply]

Google Chrome 10.0.648.127 Google Chrome 10.0.648.127 GNU/Linux GNU/Linux

riku Reply:

@书痕, 换头像了啊,真友爱。

[Reply]

Avatar

ptubuntu

Google Chrome 9.0.597.107 Google Chrome 9.0.597.107 GNU/Linux GNU/Linux

三月 11th, 2011 at 9:07 上午

安装后。使用命令还不是跟ssh一样的效果呀。

[Reply]

Google Chrome 10.0.648.127 Google Chrome 10.0.648.127 GNU/Linux GNU/Linux

riku Reply:

@ptubuntu, 这句话听不明白啊,这就是 ssh 命令啊。

[Reply]

Avatar

Steven Lee

Mozilla 2.0b13pre Mozilla 2.0b13pre FreeBSD x64 FreeBSD x64

三月 13th, 2011 at 8:45 上午

windows下面用xmanager就行
>Xmanager不是免费的吧?Win下还是建议用Xming。当然不建议使用Win。XD

[Reply]

Comment Form

top

无觅相关文章插件,快速提升流量