Hyper-V环境Ubuntu系统下Electron Snap应用启动白屏问题
Hyper-V平台Ubuntu环境Electron应用启动白屏问题
故障表现
- 自研Electron应用在Hyper-V虚拟化的Windows环境中运行正常,在同Hyper-V平台部署的Ubuntu 20.04、22.04版本中无法正常启动
- 具体现象:Electron二进制进程可正常拉起,应用窗口能正常弹出,但窗口无任何渲染内容,持续显示白屏
- 初始启动时控制台输出错误信息如下:
2422:0708/095320.055217:ERROR:viz_main_impl.cc(188)] Exiting GPU process due to errors during initialization [2461:0708/095320.661858:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process. [2461:0708/095321.183000:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported. [2441:0708/095321.666150:ERROR:platform_shared_memory_region_posix.cc(250)] Creating shared memory in /dev/shm/.org.chromium.Chromium.Yu1hE0 failed: Operation not permitted (1) [2441:0708/095321.666368:ERROR:platform_shared_memory_region_posix.cc(253)] Unable to access(W_OK|X_OK) /dev/shm: Operation not permitted (1) [2441:0708/095321.666493:FATAL:platform_shared_memory_region_posix.cc(255)] This is frequently caused by incorrect permissions on /dev/shm. Try 'sudo chmod 1777 /dev/shm' to fix.
- 初步判断为Chromium内核相关故障,核心疑似报错为
Unable to access(W_OK|X_OK) /dev/shm: Operation not permitted
已完成排查动作
- 执行
sudo chmod 1777 /dev/shm命令修复共享内存目录权限,问题未解决 - 校验
/dev/shm权限配置,结果显示配置正常,对应检查命令返回如下:
$ ls -l /dev | grep shm drwxrwxrwt 2 root root 40 Jul 8 09:54 shm $ sudo df -a | grep shm tmpfs 2009376 0 2009376 0% /dev/shm
- 确认当前项目使用的Electron版本为
18.3.4 - 验证同版本
App.Image格式安装包,在Ubuntu 20.04环境下可正常运行
2022年7月11日排查进展
- 参考社区方案,使用
--disable-gpu --disable-software-rasterizer参数启动应用后,原GPU类报错已完全消除,消除的报错内容如下:
Exiting GPU process due to errors during initialization InitializeSandbox() called with multiple threads in process gpu-process.
- 禁用GPU相关能力后,应用仍因shm相关报错无法正常启动
- 当前暂无法确认故障关联环节是Ubuntu系统配置、snap打包机制、Hyper-V虚拟化适配、Electron框架本身中的哪一部分,需要可落地的问题排查与解决思路。
内容的提问来源于stack exchange,提问作者TmTron
相关产品推荐
相关产品推荐

