如何添加缺少的RANDR扩展

Mah*_*ore 32 x11 headless xrandr xvfb

我已经在我的无头服务器上设置了xvfb服务器,当我运行DISPLAY =:99 firefox时,我得到这个异常缺少RANDR扩展

他们中的许多人说要从xorg.conf文件中禁用一些xinerna,但是在我的情况下没有创建这个文件.

所以我正在寻找如何添加缺少的RANDR扩展.

Ste*_*ler 25

当我使用xvfb通过selenium运行Firefox无头时,我看到此错误消息.事实证明,这条消息对我来说是一个红色的鲱鱼.消息只是警告,而不是错误.这不是Firefox没有正确启动的原因.

Firefox没有为我启动的原因是它已经更新为不再与我正在使用的Selenium驱动程序兼容的版本.我将selenium驱动程序升级到最新版本,Firefox再次启动正常(即使有关于RANDR的警告消息).

新版本的Firefox通常只与一个或两个版本的Selenium兼容.偶尔会发布Firefox与Nolen版本的Selenium.当发生这种情况时,新版本的Selenium可能需要一到两周的时间才能发布.因此,我现在保留了一个已知的Firefox版本,可以使用我安装的Selenium版本.除了我的包管理器保持最新版本的Firefox之外,我还安装了一个版本/opt/(例如/opt/firefox31/).Selenium Java API接受要使用的Firefox二进制文件位置的参数.缺点是旧版本的Firefox已知安全漏洞,不应与不受信任的内容一起使用.


dat*_*olf 16

首先,Xvfb不会从xorg.conf中读取配置.Xvfb是KDrive X服务器的变体,并且该系列的所有成员都可以从命令行获取其配置.

确实,XRandR和Xinerama是互斥的,但在Xvfb的情况下,首先没有Xinerama.您可以通过至少使用以下命令行选项启动Xvfb来启用XRandR扩展

Xvfb +extension RANDR [further options]
Run Code Online (Sandbox Code Playgroud)

  • @Black:您始终可以使用自己的自定义配置从源代码构建.我强烈建议在Raspbian系统上安装工具链并在那里编译.幸运的是,Xvfb对于R-Pi来说并不是一个非常复杂且易于管理的任务; 如果你能避免它,你肯定不想经历设置兼容的交叉编译工具链的困难. (2认同)