如何诊断/调试“达到最大客户端数” X错误?
我遇到了一个问题,即X阻止进程创建窗口,将以下内容说进去~/.xsession-errors: cannot open display: :0.0 Maximum number of clients reached 到处搜索有很多面临此问题的示例,有时人们会确定他们正在运行的程序正在耗尽所有客户端插槽。参见例如 LP 70872(Firefox), LP 263211(gnome-screensaver)。 对于它的价值,我几乎总是运行gnome-terminal,thunderbird,chrome浏览器,同情心,tomboy和virtualbox,除了GNOME桌面提供的常规功能外,还偶尔运行一些其他功能。 但是,我的问题不是“哪个程序导致了此问题”,而是如何诊断该问题? 在以上(和其他)错误,论坛报告等中,建议使用许多工具: xlsclients -列出给定显示的客户端应用程序,但我认为这与“ X客户端”相对应 xrestop-一种顶级样式的X资源工具,每个X客户端一行。很多''客户,未显示在xlsclients输出中 xwininfo -root -children 列出X窗口对象 据我所知,问题可能根本不是太多的客户端,而是X服务器中为长期断开的客户端保留的资源。但是,您似乎也无法(轻松地?)将X资源与其客户联系起来。一旦这个问题开始发生,是否可以有效诊断该问题,或者对于我运行的唯一对我开放的应用程序,这是一种乏味的分而治之方法? 2011年1月更新:我想我已经解决了这个问题。为了使任何人都陷入困境,由于我拥有墙纸,因此鹦鹉螺和/或compiz或该软件链中的某些内容出现了段错误。我选择了一个XML文件作为墙纸,该文件定义了旋转的图像库。它是手工制作的,但是基于/usr/share/backgrounds/contest/background-1.xml或类似文件。禁用墙纸,此后我没有发生崩溃。 我尚未将此问题标记为已回答,因为实际的具体问题不是我的问题,而是如何诊断它。不幸的是,这主要是反复试验,很糟糕。