我正在 HTPC 上安装 9.04,因此我经常通过 VNC 从我的笔记本电脑上对其进行操作。
初始安装后,我更新了所有内容,一切顺利。我能够使用 Ubuntu 的内置“远程桌面”进行 VNC,没有任何问题。
然后我安装了 180.xx 受限 nvidia 驱动程序并重新启动。电视上一切正常,但当我通过 VNC 进入时,我只能看到背景和标题栏。当我下拉菜单时,菜单在电视上可见,但不在 VNC 链接上可见。
我认为这意味着 GUI 现在正在使用某种菜单覆盖,这很好,但什么是使它们通过 VNC 可见的最佳方法?
澄清:我知道我可以关闭所有视觉效果并解决问题,但我正在寻找一种通过 VNC 查看菜单同时保持 GUI 漂亮的方法......
答案1
我在其他论坛上找到了几篇描述类似问题的帖子(这里有一篇KDE 论坛,这是徐Ubuntu)。
如果您在 Ubuntu 中使用现有的“远程桌面”选项,则 VNC 和 Compiz 桌面效果之间存在已知冲突,您必须关闭漂亮的桌面效果才能使 VNC 正常工作。
然而,在彻底放弃之前,你可以尝试几件事。
用以下方式替换 VNC无机器 NX(有免费版本可用)。它在客户端上占用一些资源,但效果很好,并且可以让你正确地看到桌面效果。
用 x11vnc 之类的东西替换内置 VNC(vino?)。性能可能会得到足够改善,可以使用。(我认为上面链接的 KDE 论坛上的某个人通过这种方式取得了一些成功。)在 Ubuntu 9.04 中,您将安装“x11vnc”包。
使用最少的桌面效果运行单独的 VNC Xserver。这不会让您通过 VNC 访问电视上显示的 Xserver——相反,它为您提供了仅限 VNC 的第二个桌面。根据您具体要做的事情,这可能会很有效。(这也可能是交易破坏者。)您需要一个“vnc4server”或“tightvncserver”软件包来实现这一点。(请参阅这个问题了解有关配置第二个显示器的提示。
用 XRDP(软件包“xrdp”)替换 VNC,这是 MS Remote Desktop 的一个开源版本。我不确定这个软件包是否允许您访问当前显示或创建一个新显示,但它可能对您有用。
答案2
简短版本:将 gconf 键设置/desktop/gnome/remote_access/disable_xdamage
为 true,您可以通过gconftool-2 -s -t bool /desktop/gnome/remote_access/disable_xdamage true
在 中运行或创建它来执行此操作gconf-editor
。
长版:我看见“现在应该可以正常工作了”(关于 vino、Compiz 和错误的乐观主义)上周,它指出 Compiz 不使用 XDamage,这是一种优化,因此只发送屏幕的更新位并链接到Ubuntu 错误。进一步挖掘后,我发现上游错误其中有一个指向错误的链接,已添加偏好,它有一个复制列出了 gconf 路径,并有一个指向蟲这才是真正的问题。
答案3
这仍然是 Ubuntu 10.04 LTS 中的一个问题。截至 2011 年 2 月,硬件驱动程序 GUI 中推荐的 NVidia 驱动程序版本为 195.36.24。x86 驱动程序版本 256.35 的发行说明状态:
- 修复了 Compiz 与 x11vnc 和 vino 等“屏幕抓取” VNC 服务器之间的交互问题,该问题导致屏幕停止更新。修复启动板错误 #353126。
请注意,Launchpad 错误指出这不会影响英特尔芯片组。
您可以尝试从 NVidia 网站安装驱动程序。下载驱动程序后,请确保安装脚本可执行(右键单击文件,转到“属性”,然后转到“权限”选项卡,并选中“允许将文件作为程序执行”复选框)。
现在,在成功运行脚本之前,您需要关闭 XServer。在执行此操作之前,请转到 GUI 之外的终端。您可以使用 ++ 在本地执行此操作,CTRL也可以通过ALTSSHF1远程登录。然后运行:
sudo /etc/init.d/gdm 停止
sudo sh ~/Downloads/NVIDIA-Linux-[按 Tab 键,然后输入]
当脚本运行时,您几乎可以对所有问题回答“是”,然后在完成后执行:
sudo 重启
如果一切顺利,您的 VNC 现在可以正常工作。