怎么把 SSH 程序启动到某个桌面

2017-02-03 14:54:29 +08:00
 4ever911
情况是这样的, 我在 macOS 上装了一个 Arch 虚拟机,跑着一个 Gnome 桌面,因为虚拟机里面多少有点卡,没有 mac 下写起来方便, 所以我用 ssh + vim 登陆上去写代码, 写好后希望能直接一个命令行执行我刚才的程序(有 GUI , Python + QT ),让这个程序直接启动到我的 Gnome 桌面去,可以实现吗? 好像可以用 XServer ? 具体怎么弄?有比较简单的做法吗?

感觉操作起来有点类似远程调试了。。 faint 。。。
3065 次点击
所在节点    Linux
15 条回复
likuku
2017-02-03 15:02:18 +08:00
machos 本地起 x11 , arch 的 sshd_config 里开启 x-forward , ssh 时,启用 x-forward 到本地 OS X 的 x11-server

差不多 2009 年时,我这么玩过... 因为有软件是 GUI ,但远端机器不想开 X Desktop

说实话,体验不好。
likuku
2017-02-03 15:03:54 +08:00
macosx 的 Finder -> 前往 -> 实用工具 -> X11 就它了
4ever911
2017-02-03 15:18:35 +08:00
@likuku 实用工具里面没有 x11 呀
4ever911
2017-02-03 15:21:17 +08:00
@likuku 找到一个替代的,我去看看。
4ever911
2017-02-03 15:35:30 +08:00
算了,不折腾了。。。。
likuku
2017-02-03 15:44:38 +08:00
关于 Mac 版 X11 - Apple 支持 : https://support.apple.com/zh-cn/HT201341

可能因为我 osx 是从很多年前旧版本一路升上来的,才带吧。

在 linux 上装好 x11 desktop 环境,再装个 vnc server , OS X 通过 vnc 去访问也可以。

VBox 是可以给虚拟机里装 tools 组件来更好支持图形化与宿主交互。
zmj1316
2017-02-03 16:40:07 +08:00
ssh + X11 forward 可以在 客户端这里显示图形
4ever911
2017-02-03 16:45:34 +08:00
@likuku 感觉这样折腾一下,又有必要装 Dock 来做了。。。貌似 dock 性能更好。。。
ArcherFeel
2017-02-03 17:55:59 +08:00
vnc 也是可以的, arch 上装一个 vncserver 是 10 秒钟的事, mac 上用 vncviewer 登录即可.更方便的话可以在 arch 上搞一个持续集成或者简单点用脚本实现从宿主机到 arch 的一键编译 /拷贝, 然后 vncviewer 登录过去执行即可.
adrianzhang
2017-02-04 02:58:20 +08:00
@likuku 提到的方式是可以的,具体是 MacOS 先安装 X11 。然后 ssh -X $Linux_IP $COMMAND ,比如要启动 Linux 里的 Firefox ,那么 ssh -X $Linux_IP firefox 就可以了。默认情况下, Linux 的 sshd_config 里是开启了 x-forward ,所以也不需要改。
leaveboy
2017-02-04 17:06:35 +08:00
awesome WM 可以轻松搞定,好像有 mac 版本
leaveboy
2017-02-04 17:09:27 +08:00
不能修改回复,就再写一条了(。)(。), awesome WM 可以轻松搞定,指定程序到某一个 tab 上。
leaveboy
2017-02-04 17:09:49 +08:00
不能修改回复,就再写一条了(。)(。), awesome WM 可以指定程序到某一个 tab 上。
iamfredng
2017-02-08 23:13:21 +08:00
我以前也有过你这样的需求,不过不是 Python 。原理我相信一样的。
iamfredng
2017-02-08 23:15:55 +08:00
你写一个独立的进程,接受 3 个管道 /sock 的输入, Start/Stop/Restart ,然后由这个进程去启动你的 python 程序,当你 ssh 过去的时候你可以通过 cat Start > xxxx.sock 去控制你的程序启动和关闭了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/337869

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX