1. 背景
- 如何在远程服务器没有显示器甚至没有显卡的情况下,运行其上的图形程序?
2. 方案
2.1 SSH -X
使用 ssh 命令的 X 参数,开启 X 转发,需要本地开启 Xserver,这样远程机器上的图形程序可以转发到本地来。
- 优势: 本地可见
123ssh -X [user]@[host] # 连接远程机器/some/gui/program # 登录之后运行图形程序即可
2.2 Xvfb
Xvfb 可以在机器上面运行一个虚拟的 Xserver,不依赖任何显示设备和物理输入设备,利用虚拟内存工作。
- 优势: 真正在远端运行
12345apt install xvfb # 安装软件Xvfb -shmem -screen 0 1280x1024x24 # 启动Xserver,-shmem 表示使用共享内存,-screen 0 表示运行在第 0 个输出设备,然后是分辨率和色彩配置export DISPLAY=:0 # 配置环境变量(请将上面一个命令后台运行,或者重开新的 ssh 登录会话执行/some/gui/program # 运行图形程序