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
sortie? Que vous disent les 3 premières lignes? Combien de mémoire / de mémoire vidéo avez-vous dans la machine?xrestop
ne commence pas - il se plaint également "Nombre maximum de clients atteints"! -> impossible d'ouvrir l'affichage.Réponses:
J'ai réussi à résoudre ce "blocage", où aucun des x-tools ne fonctionnait, car ils ont également besoin de se connecter au serveur X, en utilisant la
lsof -U
liste des processus qui utilisent des fichiers de socket.Dans cet exemple, c’était un mauvais script de démarrage qui engendrait de nouveaux processus "badproc" en dehors des limites.
Exemple de sortie de
lsof -U
:la source
lsof -U | wc -l
peut être utile.J'ai la même question, car je pense que ce problème est important pour quiconque ne redémarre pas souvent son ordinateur. Une chose que j'ai beaucoup aimée sous UNIX / Linux / Ubuntu au fil des ans est que je peux faire fonctionner mon ordinateur portable de manière fiable pendant des mois sans redémarrage (une suspension uniquement), sauf lorsque j'installe un nouveau noyau. Depuis la mise à niveau vers la "suite" qui est Maverick (Ubuntu 10.10), je l’ai rencontré et ne peut fonctionner que pendant une semaine.
J'ai aussi essayé 'xrestop'; a arrêté les effets de la fenêtre de composition (qui ont ralenti la fuite des ressources), mais ne peut toujours pas savoir pourquoi cela se produit. C'est presque comme être de retour sur une machine WinXP ... :-(
Donc oui! De meilleurs outils de débogage X seraient bien. Le problème avec 'xrestop' est qu'il nécessite également des ressources. Ainsi, une fois que vous êtes confronté au mur, il ne fonctionnera pas.
Comme astuce pour ceux qui restent bloqués par ceci (par exemple: lors de la sortie de la veille et de la fenêtre de mot de passe qui n’apparaîtra jamais car il n’ya pas de ressources pour la créer), le passage à un terminal de mémoire tampon et retour (Ctrl-Alt- F1, puis Ctrl-Alt-F7) semble libérer quelques-unes des ressources critiques.
Doug
la source
IndexError: list index out of range
certaines lignes ne sont pasPath
ennetstat -an --unix
sortie.Chromium / Chrome présente des problèmes connus qui entraînent ce message d'erreur. Utilisez-vous l'extension Lastpass?
ref: http://www.ngohaibac.com/how-to-solve-maximum-number-of-clients-reached-gtk-warning-cannot-open-display-in-ubuntu-9-10-64-bit/
la source
Je fais:
lsof -U
et j'observe beaucoup d'instances vlc.Pour résoudre mon problème j'exécute:
la source
lsof -U
affiche un grand nombre d'instances xcape.kill xcape
résoudre le problème.Maintenant, je peux utiliser à nouveau rofi et tor-browser.
la source
Était confronté au même problème avec openoffice, c’est à cause de la mémoire (RAM),
Essayez de fermer tous les terminaux (y compris les applications), Si cela n'a pas fonctionné, essayez
sudo reboot now
la source