You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSL2下使用Pyvirtualdisplay遭遇XStartTimeoutError问题求助

解决WSL2中Pyvirtualdisplay启动Xvfb的XStartTimeoutError问题

具体解决方法:

1. 替换Xvfb启动参数,绕过-displayfd自动分配

WSL2环境下-displayfd选项可能存在管道或权限兼容问题,直接指定固定显示号:
修改你的Python代码:

from pyvirtualdisplay import Display    
virtual_display = Display(visible=0, size=(1400, 900), display=1)
virtual_display.start()

2. 清理卡住的Xvfb进程

即便你确认xvfb在运行,也可能存在僵死进程占用资源,先强制清理:

pkill -9 Xvfb

清理完成后重新运行你的Python脚本。

3. 补全X11相关依赖包

部分缺失的X系依赖会导致Xvfb启动异常,执行以下命令安装:

sudo apt update && sudo apt install -y xvfb x11-utils libxext6 libxrender-dev

4. 提升WSL2系统资源配额

Xvfb启动需要一定资源,WSL2默认限制可能不足,在Windows用户目录下创建/修改.wslconfig文件:

[wsl2]
memory=4GB
processors=2

保存后执行wsl --shutdown重启WSL,再重新运行脚本。

5. 手动启动Xvfb后绑定使用

先手动启动Xvfb进程:

Xvfb :1 -screen 0 1400x900x24 -br -nolisten tcp &

再在Python脚本中直接绑定该显示:

import os
os.environ['DISPLAY'] = ':1'
# 后续直接执行渲染逻辑,无需再通过pyvirtualdisplay启动display

内容的提问来源于stack exchange,提问作者Rotkiv

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 08:22:05