我希望能够登录到远程 Ubuntu 22.04 并查看该计算机上显示的桌面。(我知道如何创建一个vncserver
具有单独的桌面实例)。我对内置远程桌面有单独的问题,所以这是专门关于x11vnc
和 的x0vncserver
。
它们在 Xfce 下的 18.04 上为我工作了很多年。
现在在 22.04 上,它们以类似的方式失败,所以我怀疑这确实是一个 Gnome 或 Xorg(或者 - Compiz 不再是一个东西了吗?)问题。由于使用它可以正常工作,这一事实使这种怀疑更加强烈gnome-session-flashback
。
x11vnc
我已经为和摆弄了许多选项x0vncserver
,但我的问题仍然存在。
简短版本:当我移动窗口时,我会看到原始位置的原始窗口和新位置的窗口。也许在窗口移动的路径中有一两个窗口。例如,我从一个终端开始:
然后我移动了窗口:
只有右下角是互动的...
现在的技巧...如果我停止客户端和 vnc 服务器,并启动不同的客户端和 vnc 服务器,移动工件仍然存在。这是一个复制方法(这里,“客户端”是运行 vnc 客户端的 Debian 机器,“服务器”是运行 vnc 服务器的 Ubuntu 22.04 机器):
- 从刚刚重新启动的服务器开始。
- 第一次连接
x11vnc -usepw -display :0 -forever -rfbport 5901
在服务器上启动- 从客户端连接 Remmina
- 在vnc客户端中:
- 查看一个窗口(上面的第一个屏幕截图)
- 移动窗口
- 查看两个或更多窗口(上面的第二个屏幕截图)
- 杀死 Remmina 客户端
- 杀死
x11vnc
服务器进程
- 第二次连接
x0vncserver -rfbport=5901 -PasswordFile=/home/peter/.vnc/passwd -display=:0 -fg
在服务器上启动- 连接
xtigervncviewer
到客户端 - 看到两个或更多窗口!原来已经移动的窗口仍然在那里。“旧位置工件”仍然存在(但看起来有点不同,注意右上角实际上是两个重叠的窗口):
因此,原始窗口位置的历史记录以某种方式存储在服务器上,并且在x11vnc
/x0vncserver
重新启动后仍然存在。这让我相信这确实是一个 Gnome/Xorg/Compiz 问题。
编辑:附加数据点
我尝试安装
gnome-session-flashback
,并且在使用闪回会话时x11vnc
按我的预期工作。但我其实并不想gnome-session-flashback
永远奔跑。我预计(但尚未测试)XFCE 也能正常工作。amdgpu
我正在使用我的 graphcis 卡的开源驱动程序Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] [1002:67ff] (rev ff)
。我尝试安装和使用 AMD 专有驱动程序,但没有什么区别。它在 VirtualBox 虚拟机中也运行良好,显然不使用 AMD 显卡驱动程序。
以前有人见过这样的事情吗?并且知道如何解决吗?
原来这是因为我使用的是 KVM 切换器。我有一台台式机正在运行
x11vnc
,另一台(一台笔记本电脑)正在运行 VNC 客户端。每次我使用笔记本电脑时,我都会通过切换 KVM 开关来显示笔记本电脑,从而断开显示器与正在运行的计算机的连接x11vnc
。如果我将 KVM 开关保留在
x11vnc1
计算机上并使用笔记本电脑的屏幕来运行 VNC 客户端,则一切正常。一旦我将 KVM 切换器从x11vnc
服务器上移开,问题就会出现。我已提交:LibVNC/x11vnc#234:“如果显示器断开连接或与 KVM 切换器一起使用,x11vnc 会出现显示伪影并且工作缓慢。” 为了这。
我计划使用 EDID 模拟器来解决这个问题。我已经订购了这个。它希望让计算机认为显示器仍然连接着。然后下次我更新 KVM 切换器时,购买一个带有内置 EDID 仿真器的 KVM 切换器。当 EDID 模拟器到达并且我已经尝试过时,我会尝试记住更新此线程。