Je rencontre un problème par lequel X empêche les processus de créer des fenêtres, énonçant quelque chose comme ce qui suit dans ~/.xsession-errors
:
cannot open display: :0.0
Maximum number of clients reached
Il existe de nombreux exemples de personnes confrontées à ce problème dans le cadre de la recherche. Parfois, les utilisateurs identifient le programme en cours d’utilisation qui utilise tous les créneaux clients. Voir par exemple LP 70872 (Firefox), LP 263211 (gnome-screensaver).
Pour ce que ça vaut, je lance presque tout le temps gnome-terminal, thunderbird, chrome-browser, empathie, garçon manqué et virtualbox, en plus des choses habituelles que vous obtenez avec le bureau GNOME, et de temps en temps d'autres petits morceaux.
Cependant, ma question n’est pas "quels programmes causent ce problème" mais comment faire pour diagnostiquer ce problème?
Dans ce qui précède (et dans d’autres) bogues, rapports de forum, etc., plusieurs outils sont suggérés:
xlsclients
- liste les applications clientes pour l'affichage donné, mais je ne pense pas que cela corresponde à 'X clients'xrestop
- un outil de ressources X de style supérieur, une ligne par client X. Beaucoup de '' clients, non affichés enxlsclients
sortiexwininfo -root -children
liste les objets X window
D'après ce que je peux comprendre, le problème ne réside peut-être pas en un grand nombre de clients, mais plutôt en des ressources conservées sur le serveur X pour les clients déconnectés depuis longtemps. Mais il semblerait également que vous ne pouvez pas (facilement?) Relier les ressources X à leur client. Peut-on diagnostiquer efficacement ce problème une fois qu'il a commencé à se produire, ou une approche fastidieuse de division et de conquête pour les applications que je dirige est la seule approche qui me soit ouverte?
Mise à jour janvier 2011: Je pense avoir résolu ce problème. Pour le bénéfice de quiconque trébuchant à ce sujet, Nautilus et / ou Compiz ou quelque chose de cette chaîne de logiciels était défectueux en raison d'un fond d'écran que j'avais. J'avais choisi un fichier XML comme fond d'écran, qui définissait une galerie d'images en rotation. C'était fait à la main, mais basé sur /usr/share/backgrounds/contest/background-1.xml ou similaire. Désactiver le papier peint et je n'ai pas eu de crash depuis.
Je ne marque pas encore cela comme une réponse, car le problème spécifique n'était pas ma question, mais comment le diagnostiquer. Malheureusement, il s’agissait surtout d’essais et d’erreurs, ce qui est nul.
xrestop
ne commence pas - il se plaint également "Nombre maximum de clients atteints"! -> impossible d'ouvrir l'affichage.
xrestop
sortie? Que vous disent les 3 premières lignes? Combien de mémoire / de mémoire vidéo avez-vous dans la machine?