Estou atingindo um problema pelo qual o X impede que processos criem janelas, dizendo algo como o seguinte ~/.xsession-errors
:
cannot open display: :0.0
Maximum number of clients reached
Pesquisando, há muitos exemplos de pessoas enfrentando esse problema e, às vezes, as pessoas identificam qual programa eles estão executando usando todos os slots do cliente. Veja, por exemplo, LP 70872 (Firefox), LP 263211 (gnome-screensaver).
Pelo que vale, eu corro o gnome-terminal, o thunderbird, o chromium-browser, a empatia, o tomboy e a caixa virtual quase o tempo todo, além das coisas normais que você obtém com a área de trabalho do GNOME e, ocasionalmente, outros pedaços.
No entanto, minha pergunta não é "qual dos meus programas está causando esse problema", mas sim, como alguém pode diagnosticar esse problema?
Nos erros acima (e outros), relatórios de fórum, etc., são sugeridas várias ferramentas:
xlsclients
- lista os aplicativos clientes para a exibição em questão, mas acho que não corresponde a 'X clients'xrestop
- uma ferramenta de recursos X de estilo superior, uma linha por cliente X. Muitos clientes '', não mostrados naxlsclients
saídaxwininfo -root -children
lista objetos da janela X
Pelo que pude entender, o problema pode não ser muitos clientes, mas recursos mantidos no servidor X para clientes que há muito se desanexam. Mas também parece que você não pode (facilmente?) Relacionar os recursos do X ao cliente deles. Pode-se diagnosticar efetivamente esse problema depois que ele começa a ocorrer ou é uma abordagem tediosa de dividir e conquistar para os aplicativos em que executo a única abordagem aberta para mim?
Atualização de janeiro de 2011: Acho que resolvi esse problema. Para o benefício de qualquer um que se deparasse com isso, o nautilus e / ou o compiz ou algo nessa cadeia de software estava falhando devido a um papel de parede que eu tinha. Eu tinha escolhido um arquivo XML como meu papel de parede, que definia uma galeria rotativa de imagens. Foi feito à mão, mas com base em /usr/share/backgrounds/contest/background-1.xml ou similar. Desativando o papel de parede e eu não tive um acidente desde então.
Não estou marcando isso como respondido ainda, já que o problema específico real não era minha pergunta, mas como diagnosticá-lo. Infelizmente, isso foi principalmente tentativa e erro, o que é péssimo.
xrestop
não inicia - ele também reclama "Número máximo de clientes atingidos"! -> incapaz de abrir a tela.
xrestop
saída? O que as três primeiras linhas dizem a você? Quanta memória / memória de vídeo você possui na máquina?