我正在安装 x11vnc 和 xvfb 的 debian-jessie 系统上运行 python(包括 pygame)程序。我想使用 xvfb 和 x11vnc 分别显示终端窗口和 pygame 窗口。我的方法是这样的:
(1.) 启动 xvfb,有 2 个屏幕:
Xvfb :20 -屏幕 0 1280x1024x16 -屏幕 1 1280x1024x16 &
(2.)使用命令启动xterm以执行bash脚本,该脚本在requirements.txt中安装依赖项,并启动python程序:
xterm -显示:20.0 -e ./start_python.sh
(3.) 启动 2 个 x11vnc 服务器,连接到显示服务器的屏幕 0 和 1:20
对于 xterm 窗口(windowid 0x20000e):x11vnc -noxdamage -display :20.0 -v -forever -rfbport 5920 -sid 0x20000e &
对于pygame窗口(windowid 0x400004):x11vnc -noxdamage -display :20.1 -v -forever -rfbport 5930 -id 0x400004 &
当我启动第一个与 xterm 相连的 x11vnc 时,我可以连接 localhost:5920 上的 vnc-viewer 并查看 xterm 窗口。
之后,当我启动附有 pygame 窗口的第二个 x11vnc 时,我可以使用 localhost:5930 连接 vnc-viewer 并正确查看它。但现在我还在 localhost:5920 中看到相同的 pygame 窗口与 xterm 窗口重叠。我需要 localhost:5920 仅显示终端窗口,而不是重叠的 pygame 窗口。