我已经安装了xvfb的服务器我无头的服务器上,当我米运行 DISPLAY =:99火狐 我得到这个例外失踪RANDR扩展如何添加缺少的RANDR扩展
他们中许多人说:从xorg.conf文件中禁用一些xinerna,但是这个文件没有在我的情况下创建。
所以我正在寻找如何添加缺少的RANDR扩展。
我已经安装了xvfb的服务器我无头的服务器上,当我米运行 DISPLAY =:99火狐 我得到这个例外失踪RANDR扩展如何添加缺少的RANDR扩展
他们中许多人说:从xorg.conf文件中禁用一些xinerna,但是这个文件没有在我的情况下创建。
所以我正在寻找如何添加缺少的RANDR扩展。
首先,Xvfb不会从xorg.conf中读取配置。 Xvfb是KDrive X服务器的一个变体,就像该家族的所有成员从命令行获取其配置一样。
确实,XRandR和Xinerama是互斥的,但在Xvfb的情况下,没有Xinerama首先。您可以启用通过启动Xvfb来至少使用以下命令行选项
Xvfb +extension RANDR [further options]
当我使用xvfb的通过硒运行Firefox的无头,我看到此错误消息XRandR扩展。事实证明,这条消息对我来说是一条红鲱鱼。该消息只是一个警告,而不是一个错误。这不是为什么Firefox不能正确启动。
Firefox未启动的原因是它已更新为与我正在使用的Selenium驱动程序不兼容的版本。我将硒驱动程序升级到最新版本,并且Firefox再次启动(即使有关于RANDR的此警告消息)。
Firefox的新版本通常只与Selenium的一个或两个版本兼容。有时Firefox会与012版本的兼容版本的Selenium一起发布。当发生这种情况时,新版Selenium可能需要一到两周才能发布。因此,我现在保留一个已知可与我已安装的Selenium版本配合使用的Firefox版本。除了由我的软件包管理器保持最新版本的Firefox之外,我还在/opt/
(例如/opt/firefox31/
)中安装了一个版本。 Selenium Java API为要使用的Firefox二进制文件的位置提供参数。缺点是旧版本的Firefox已经知道安全漏洞,不应该与不受信任的内容一起使用。
我有同样的问题火狐30 + 硒2.49 + 的Ubuntu 15.04。
它好工作与Ubuntu的14,但升级到15.04后,我得到了相同的RANDR
警告和问题在使用Xfvb启动Firefox浏览器。
添加+extension RANDR
后,它再次工作。
$ vim /etc/init/xvfb.conf
#!upstart
description "Xvfb Server as a daemon"
start on filesystem and started networking
stop on shutdown
respawn
env XVFB=/usr/bin/Xvfb
env XVFBARGS=":10 -screen 1 1024x768x24 -ac +extension GLX +extension RANDR +render -noreset"
env PIDFILE=/var/run/xvfb.pid
exec start-stop-daemon --start --quiet --make-pidfile --pidfile $PIDFILE --exec $XVFB -- $XVFBARGS >> /var/log/xvfb.log 2>&1
使用Ubuntu 14.04或14.10?因为我正在尝试14.04,并且在尝试运行Chromium浏览器时收到了“丢失的RANDR”扩展消息...可能是Chromium问题 – zabumba
至少在raspbian上,似乎没有Xvfb的RANDR支持。有其他解决方案吗? – Black
@Black:您可以始终使用自己的自定义配置从源代码构建自己的源代码。我强烈建议在Raspbian系统上安装工具链并在那里编译。幸运的是,Xvfb对于R-Pi来说并不是很复杂和可管理的任务;如果你可以避免这种情况,你肯定不想经历建立一个兼容的交叉编译工具链的努力。 – datenwolf
没有帮助,同样的错误... –