远程访问Linux桌面

在使用macOS作为桌面工作系统,也需要访问远程Linux服务器的Desktop,主要是因为有些开发工作需要在Linux上完成。

远程Linux桌面方案

Linux桌面远程访问主要有以下几种方式:

  • VNC:

Linux服务器上启动VNC服务,macOS通过内置的vnc客户端访问。

优点是即使网络断开,VNC服务器依然在Linux上运行,下次连接访问可以继续之前中断的桌面工作。

缺点是几乎所有负载都在远程服务器上,通过网络传输图形绘制性能较差,需要非常高速的网络支持。

  • X Window:

X Window是传统Unix图形系统提供的客户服务器体系,简单来说,X Window服务器只用于展示图形,工作在你的桌面系统上; X Window客户段则是真正运算的工作程序,工作在远程服务器上。

优点是因为X Window是Unix/Linux内建的图形显示体系,本身就是基于网络客户服务器体系,非常适合远程操作。并且由于图形管理都在客户端本地,所以服务器端没有图形绘制开销,较为节约资源,性能也就相对较好。

缺点是网络中断会影响程序运行,所以通常只适合有稳定保障的局域网。此外,并非所有操作系统都内建了X.org,例如macOS就需要独立安装第三方X Window系统。

  • Xpra:

Xpra是一个X Window增强工具,同样也是将程序在远程服务器上运行,然后将显示重定向到本地主机由本地X Window绘制图形。Xpra最主要的增强是断开网络不影响程序运行,远程服务器上的程序不会丢失任何状态。但是Xpra又不同于VNC,在本地运行的程序是rootless,也就是应用运行就像一个本地Window manager管理的独立窗口,而不是将一堆程序集中到一个box中。

Xpra使用了自定义协议,并且对延迟不敏感,所以非常适合在网速较低、不适合标准X forwarding的环境下运行。