大约运行一个小时后,我的Selenium浏览器会显示一个“哎呀,崩溃啦!”页面,在控制台无法与浏览器进行任何交互,必须关闭浏览器并重新启动脚本。是否有对此的解释或简单解决方法?
![Aw Snap page display](https://istack.dev59.com/X8Iam.webp)
这个错误屏幕...
您在运行基于Chrome浏览器的Selenium测试约一小时后看到此错误,此问题可能是由于/dev/shm
的大小减小,即/dev/shm
的空间不足所致。例如:
mount -o remount,size=64M /dev/shm
mount --bind /tmp/ /dev/shm/
64M
的大小已经大大减小。
根据Linux: Chrome/Chromium SIGBUS/Aw, Snap! on small /dev/shm问题522853中的讨论:
util_posix.cc:GetShmemTempDir
在Linux上尝试始终使用/dev/shm
用于非可执行内存。/dev/shm
所需的大小大大取决于渲染器的数量、屏幕分辨率等。/dev/shm
空间之前就耗尽内存。此问题在以下讨论中进行了详细分析和讨论:
通过修复CreateAnonymousSharedMemory()
在返回fd时不泄漏FILE的提交/修订版,最终解决了这个问题。
CreateAnonymousSharedMemory()
被修改为将可写内存句柄作为文件描述符而不是文件返回。由于POSIX没有提供一种标准方法来撤销文件而不关闭底层文件描述符,因此通过泄漏文件来实现了这一点。 我们现在提供CreateAndOpenFdForTemporaryFileInDir()
,以避免完全包装临时文件描述符到文件中的需要。
确保:
/dev/shm/
被挂载并分配了足够的内存。@Test
。我有同样的问题,我通过在函数内每30分钟自动重启我的驱动程序来解决它。