Por algum tempo, eog
e gnome-terminal
estou começando muito lentamente no meu (X) Ubuntu 13.10. Acho que outras ferramentas do Gnome também são afetadas, mas não uso outras.
Agora, recebo um org.freedesktop.DBus.Error.NoReply
erro sempre que gnome-terminal
inicia:
** (gnome-terminal: 5516): AVISO **: Erro ao recuperar o endereço do barramento de acessibilidade: org.freedesktop.DBus.Error.NoReply: Não recebeu uma resposta. As possíveis causas incluem: o aplicativo remoto não enviou uma resposta, a política de segurança do barramento de mensagens bloqueou a resposta, o tempo limite da resposta expirou ou a conexão de rede foi interrompida.
e toda vez que eog
começa:
** (eog: 4996): AVISO **: Erro ao recuperar o endereço do barramento de acessibilidade: org.freedesktop.DBus.Error.NoReply: Não recebeu uma resposta. As possíveis causas incluem: o aplicativo remoto não enviou uma resposta, a política de segurança do barramento de mensagens bloqueou a resposta, o tempo limite da resposta expirou ou a conexão de rede foi interrompida.
(eog: 4996): EOG-WARNING **: Não foi possível carregar o ícone: Ícone 'image-loading' não está presente no tema
Eu acho que tem algo a ver comigo removendo alguns programas que estavam iniciando por padrão, inclusive at-spi2-registryd
, os quais acho que pertencem ao Projeto de Acessibilidade do Gnome .
Segundo dpkg --getselections | grep spi
, at-spi2-core
ainda está instalado no meu sistema.
Lembro-me de fazer algo muito hacky / estúpido, como trocar alguns arquivos de configuração ou binários com programas de eco vazios para impedir que o daemon seja iniciado.
- Como posso corrigir este erro?
- O que causa esse erro?
O Google produz alguns at-spi...
links relacionados:
- https://lists.ubuntu.com/archives/ubuntu-accessibility-bugs/2013-August/006261.html
- https://lists.ubuntu.com/archives/ubuntu-accessibility-bugs/2013-August/006264.html
Isso pode ter a ver com um freedesktop
problema relacionado que eu tenho nmcli
, portanto, dê uma olhada: avisos e erros do nmcli freedesktop DBus .
ltrace -r eog
:
0.000000 __libc_start_main(0x41e210, 2, 0x7fff41235b18, 0x45c020, 0x45c0b0 <unfinished ...>
0.000734 bindtextdomain("eog", "/usr/share/locale") = "/usr/share/locale"
0.001297 bind_textdomain_codeset(0x463fff, 0x45c0f6, 1, 0, 65535) = 0x1d59750
0.000863 textdomain("eog") = "eog"
0.000759 dcgettext(0, 0x45c0fc, 5, 0x676f65, 65535) = 0x45c0fc
0.000718 g_option_context_new(0x45c0fc, 1, 2, 3, 0) = 0x1d598e0
0.000711 g_option_context_add_main_entries(0x1d598e0, 0x45c300, 0x463fff, 0x1d59940, 88) = 0
0.000668 gtk_get_option_group(1, 0x7f161670f2e0, 0x1d59960, 0x7f161670bec0, 0) = 0x1d5ccd0
0.003283 g_option_context_add_group(0x1d598e0, 0x1d5ccd0, 0x1d5cf60, 0x7f161670bec0, 3) = 0x1d5d000
0.000711 g_irepository_get_option_group(0, 0, 0x1d5d000, 0x1d50670, 0) = 0x1d5cf80
0.000845 g_option_context_add_group(0x1d598e0, 0x1d5cf80, 0x1d5d830, 3, 3) = 0x1d5d000
0.000613 g_option_context_parse(0x1d598e0, 0x7fff41235a0c, 0x7fff41235a00, 0x7fff41235a18, 0
** (eog:2797): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
) = 1
25.069454 g_option_context_free(0x1d598e0, 0x7fff41235b18, 0x7fff41235b20, 0x7fff412373c4, 2) = 0
0.000330 xmp_init(0x7f1616281740, 0xffffffff, 0, 0x7f1616281768, 0) = 1
0.001356 g_getenv(0x45c905, 0x1dbb610, 0x1dbb5c0, 1, 3) = 0
[...]
0.000509 g_object_ref(0x204f240, 3, 1, 51, 0x7f16080008e0) = 0x204f240
0.000681 g_queue_push_tail(0x1d5d780, 0x204f240, 2, 51, 0x204d270) = 0x1ff5ce0
0.000793 g_cond_broadcast(0x67b7d0, 0x1ff5ce0, 0, 16, 0) = 0
0.000797 g_mutex_unlock(0x67b7c0, 132, 1, -1, 0x7f16080008e0) = 0
0.000716 g_object_unref(0x204f240, 0, 0x7f16080008e0, -1, 0x7f16080008e0) = 2
(eog:2797): EOG-WARNING **: Couldn't load icon: Icon 'image-loading' not present in theme
0.048019 gtk_icon_view_get_type(0x1fb23b0, 0x450510, 0x1fb23b0, 0x7f1616703450, 0x1d50a60) = 0x2015420
0.000800 g_type_check_instance_cast(0x1fb23b0, 0x2015420, 0x1fb23b0, 0x7f1616703450, 0x1d50a60) = 0x1fb23b0
0.000743 gtk_icon_view_get_visible_range(0x1fb23b0, 0x7fff41235820, 0x7fff41235828, 0x2015420, 0x2015420) = 0
0.000588 gtk_icon_view_get_type(0x1fb23b0, 0x450510, 0x1fb23b0, 0x7f1616703450, 0x1d50a60) = 0x2015420
[...]
ltrace -r gnome-terminal
:
[...]
0.000543 g_str_hash(0x7f1ba08d1617, 0x7f1ba08d1617, 0x21cd180, 0, 0x219d050) = 0x6e8257f7
0.000714 g_str_hash(0x7f1ba08d194c, 0x7f1ba08d194c, 0, 0x7f1ba08d194c, 0) = 0x24119b48
0.000490 g_str_hash(0x7f1ba08d194c, 0x7f1ba08d194c, 0x21bcaa0, 0, 0x219d050) = 0x24119b48
0.000655 g_str_hash(0x7f1ba12f72c7, 0x7f1ba12f72c7, 0, 0x7f1ba12f72c7, 40) = 0xac0d625f
0.000596 g_str_hash(0x7f1ba12f72c7, 0x7f1ba12f72c7, 0x21bcc20, 0, 0x219d050) = 0xac0d625f
[...]
** (gnome-terminal:5758): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
25.036838 g_str_hash(0x7f1ba0b4452a, 0x7f1ba0b4452a, 0, 0x7f1ba0b4452a, 508) = 0xa59bb851
0.000696 g_str_hash(0x21b18bc, 0x21b18bc, 0x21d7080, 0, 509) = 0xa59bb851
0.000501 g_str_hash(0x7f1ba13cf396, 0x7f1ba13cf396, 0, 0x7f1ba13cf396, 24) = 0x22c79e89
0.000550 g_str_hash(0x7f1ba13cf396, 0x7f1ba13cf396, 0x21d7150, 0, 0x219d050) = 0x22c79e89
0.003683 g_str_hash(0x7f1ba0dc076b, 0x7f1ba0dc076b, 0, 0x7f1ba0dc076b, 384) = 0xa4fa89ab
strace -r eog
:
[...]
0.000268 poll([{fd=3, events=POLLIN}], 1, 25000) = 1 ([{fd=3, revents=POLLIN}])
0.000723 recvmsg(3, {msg_name(0)=NULL, msg_iov(1)=[{"l\2\1\1\v\0\0\0\1\0\0\0=\0\0\0\6\1s\0\6\0\0\0:1.307\0\0"..., 2048}], msg_controllen=0, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 262
0.000351 recvmsg(3, 0x7ffff251a080, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable)
0.000339 sendmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\0\0\0\0\2\0\0\0[\0\0\0\1\1o\0\r\0\0\0/org/a11"..., 112}, {"", 0}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 112
0.000354 poll([{fd=3, events=POLLIN}], 1, 25000) = 0 (Timeout)
25.025550 open("/usr/lib/x86_64-linux-gnu/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
0.000410 write(2, "\n** (eog:2786): WARNING **: Erro"..., 319
** (eog:2786): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
) = 319
0.000660 socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC, 0) = 4
0.000305 connect(4, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0
0.000243 getpeername(4, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, [20]) = 0
[...]
0.000054 poll([{fd=4, events=POLLIN}], 1, 4294967295) = 1 ([{fd=4, revents=POLLIN}])
0.000029 recvfrom(4, "\1\0\213\0\0\0\0\0\240\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32
0.000027 recvfrom(4, 0x1709c34, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
0.000026 recvfrom(4, 0x1709c34, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
0.000027 poll([{fd=4, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=4, revents=POLLOUT}])
(eog:2786): EOG-WARNING **: Couldn't load icon: Icon 'image-loading' not present in theme
) = 16
0.000056 poll([{fd=4, events=POLLIN}], 1, 4294967295) = 1 ([{fd=4, revents=POLLIN}])
0.000029 recvfrom(4, "\1\0\214\0\0\0\0\0\241\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32
0.000028 recvfrom(4, 0x1709c34, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
0.000026 recvfrom(4, 0x1709c34, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
0.000032 poll([{fd=4, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=4, revents=POLLOUT}])
strace -r gnome-terminal
:
[...]
0.000406 recvmsg(3, 0x7fffb9bbc6e0, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable)
0.000434 sendmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\0\0\0\0\2\0\0\0[\0\0\0\1\1o\0\r\0\0\0/org/a11"..., 112}, {"", 0}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 112
0.000328 poll([{fd=3, events=POLLIN}], 1, 25000) = 0 (Timeout)
25.006307 open("/usr/lib/x86_64-linux-gnu/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
0.000486 write(2, "\n** (gnome-terminal:5885): WARNI"..., 330
** (gnome-terminal:5885): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
) = 330
0.000519 socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC, 0) = 4
0.000118 connect(4, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0
0.000125 getpeername(4, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, [20]) = 0
[...]
root
usandosu -
, entãoeog
.strace -r
) ou ltrace (por exemploltrace -r
) possam lançar alguma luz.gedit
ougnome-disks
? Os traços deles são semelhantes?Respostas:
Infelizmente, essa não é uma solução, mas essas informações podem ser úteis para você.
Acho que o seu problema é esse
gnome-terminal
eeog
está tentando se conectar a umD-bus
soquete de instância at-spi , que está configurado incorretamente.Como o D-bus funciona em geral:
Comece
Existem 2 instâncias de barramento D casual, em execução na sua máquina, por sistema e por usuário, e uma relacionada especial à acessibilidade -
at-spi
iniciada porat-spi-bus-launcher
.A instância por sistema é iniciada por scripts init, por exemplo, no Mint with
/etc/init/dbus
.A instância por usuário é executada quando o Xsession é iniciado
/etc/X11/Xsession.d/75dbus_dbus-launch
.at-spi
A instância parece ter sido iniciada pelo gnome-session, que lê.desktop
arquivos do$xdg
diretório do sistema . O at-spi é configurado por/etc/xdg/autostart/at-spi-dbus-bus.desktop
, que inicia aat-spi
instância.Funcionamento e configuração
O D-bus funciona como um intermediário de mensagens para aplicativos gnome. Eles podem enviar mensagens entre si chamando funções de ligação dbus-glib (glib é a biblioteca geral do Gnome C, que é usada pela maioria dos aplicativos gnome).
Além disso, os aplicativos podem enviar mensagens para outros aplicativos que ainda não foram iniciados. Nesse caso, o dbus pode primeiro iniciar ("ativar") o serviço do destinatário e depois entregar a mensagem (que é frequentemente abusada pelos caras do gnome para iniciar novos processos ).
Quais serviços o barramento D pode ativar é determinado pelos arquivos de configuração na
/usr/share/dbus-1/
pasta.system-services
subpasta é para instância de dbus por sistema,services
- para uma por usuário.Observe também que essas instâncias do barramento d criam um soquete de domínio UNIX e ouvem as mensagens dos aplicativos. Os aplicativos se conectam a esses soquetes na inicialização e trocam dados entre si via D-bus. Os soquetes podem ser mapeados para o sistema de arquivos (como para a instância por sistema do barramento D, cujo soquete é mapeado
/var/run/dbus/system_bus_socket
) ou não.Como resolver o seu problema (na verdade não sei)
Eu acho que você estragou a configuração da
at-pci
instância: a inicialização pelo gnome-session (/etc/xdg/autostart/at-spi-dbus-bus.desktop
) ou o local do soquete.Infelizmente, não tenho mais ideias concretas sobre o que fazer. Você poderia fornecer seu
ps
oupstree
informações, a respeitoat-pci
egnome-terminal
?Atualizar
Tentei descobrir a fonte da sua mensagem de erro:
Eu tentei grepping o código fonte do gnome-terminal .
grep -r "spi" gnome-terminal/
não dá nenhum resultado;grep -r "dbus" gnome-terminal/
dá alguns, mas eles parecem estar relacionados ao dbus normal, não ao pci. Então, acredito, o gnome-terminal não acessaat-spi2
diretamente.Em vez disso, apenas alguns widgets gtk estão implicitamente chamando
gail
ouatk
funções , que por sua vez tentam interagir com oat-spi
subsistema e falham em fazê-lo, porque você o matou:Então, acho que a solução para você é restaurar os seguintes arquivos do
at-spi2-core
pacote (com base emdpkg -L at-spi2-core
) ou apenas reinstalar o pacote inteiro:ALTERNATIVAMENTE, você pode tentar desativar a acessibilidade invertendo as ações descritas aqui para ativá-la. (Basicamente, você precisará ajustar alguns sinalizadores
gconftool-2
conforme descrito na seção "Configurando o Desenvolvimento de Aplicativos Acessíveis e o Ambiente de Teste").Informação inútil, mas interessante
Eu fiz mais algumas pesquisas no código fonte do at-spi2-core
O arquivo README na pasta master / bus / at-spi-bus-launcher.c informa que o at-spi-bus-launcher é iniciado pela instância por sessão do dbus conforme o esperado. Curiosamente, há também uma propriedade da janela raiz do Windows X AT_SPI_BUS, você pode encontrar seu valor via
xprop --root
comando e, para mim, é igual aNão sei o que é, esperava que fosse um local de soquete, mas não existe esse arquivo
/tmp
para mim. :(Atualização 2
Eu acho que a razão exata do seu problema pode ser que o dbus comum por sistema vê seu
/usr/share/dbus-1/services/org.a11y.Bus.service
arquivo e está tentando ativá-lo em resposta a chamadas atk do gnome-terminal (porque suas configuraçõesgconf
oudconf
têm acessibilidade ativada e isso diz aos widgets gtk para fornecer mensagens paraat-spi
). Isso falha, porque você removeu oat-spi-bus-launcher
binário.O que me faz pensar assim é a minha própria experiência
Caribou Antler
. Caribou é um teclado virtual de merda, instalado com o Debian. Eu tenho um tablet Debian 7, onde instalei outro teclado virtual do repositório Ubuntu - o incrível OnBoard. O fato é que ambos os teclados são ativados / desativados pela mesma tecla de acessibilidade no dconf. Portanto, se a tecla estiver ativada, ambas serão ativadas com um clique no GtkEntry ou no GtkTextView, para que o Caribou de merda não deixe o meu OnBoard funcionar corretamente. E se eu desativar a acessibilidade no gconf / dconf, o OnBoard também será desativado. :(Então, eu fiz um hack bruto e apenas comentei o conteúdo do meu
/usr/share/dbus-1/services/org.gnome.Caribou.Antler.service
arquivo. Agora, quando o dbus está tentando ativar o Caribou, ele falha, enquanto o OnBoard está ativado.Mas quando inicio algum aplicativo gráfico no terminal, como
sublime_text
, recebo uma mensagem de erro, formatada de maneira muito semelhante à sua:fonte
Isso resolve para mim
para acionar o aplicativo apropriado para abrir um problema arbitrário de arquivo (por exemplo):
fonte