Que programa inicia o dbus-daemon?

6

Qual programa inicia o processo dbus-daemon por sessão de usuário no GNOME 2 e no GNOME 3 (presumivelmente via dbus-launch)? Eu gostaria de saber porque eu gostaria de adicionar um diretório para a lista de diretórios que o dbus-daemon verifica arquivos .service.

(Obviamente, se é um programa sh, "sh" não é a resposta que estou procurando; -)

Como eu poderia ter respondido a essa pergunta por mim mesmo com eficiência? Que documentação existe na área de trabalho e na inicialização da sessão?

    
por Croad Langshan 29.10.2012 / 02:27

3 respostas

4

O gerenciador de login inicia o dbus através do diretório de scripts Xsession. Se a opção use-session-dbus estiver configurada para o Xsession, o script dsessession será carregado e será executado dbus-launch --exit-with-session $session_command .

    
por dobey 29.10.2012 / 02:43
2

O início da maioria das tarefas e serviços durante a inicialização, incluindo o daemon Dbus, é tratado por Upstart .

O daemon Dbus não é iniciado por sessão de usuário, mas na montagem do último sistema de arquivos local . A manipulação de configuração de tarefas de inicialização / parada / monitoramento do daemon Dbus pode ser encontrada em /etc/init/dbus.conf .

Você pode usar trabalho de usuário para iniciar o Hamster em login gráfico .

    
por Goran Miskovic 09.03.2013 / 18:46
-1

Eu discordarei do dobey. A melhor coisa a fazer é aprender como encontrar por si mesmo.

Listar todos os processos e sua estrutura em árvore PID:

pstree
init─┬─ModemManager───2*[{ModemManager}]
     ├─NetworkManager─┬─2*[dhclient]
     │                ├─dnsmasq
     │                └─3*[{NetworkManager}]
     ├─accounts-daemon───2*[{accounts-daemon}]
     ├─acpid
     ├─avahi-daemon───avahi-daemon
     ├─bluetoothd
     ├─colord───2*[{colord}]
     ├─cron
     ├─cups-browsed
     ├─cupsd
     ├─dbus-daemon
....

Portanto, o dbus-daemon é iniciado por init . No entanto, observe que há mais de um daemon dbus em execução.

manos@box:~$ ps aux | grep dbus-daemon
message+   845  0.0  0.0  40668  2620 ?        Ss   10:48   0:03 dbus-daemon --system --fork
manos     2480  0.0  0.0  40248  2428 ?        Ss   10:48   0:01 dbus-daemon --fork --session --address=unix:abstract=/tmp/dbus-o3GMKn9JC1
manos     2569  0.0  0.0  39248  2004 ?        S    10:48   0:00 /bin/dbus-daemon --config-file=/etc/at-spi2/accessibility.conf --nofork --print-address 3

Existem (pelo menos) duas instâncias do dbus-daemon em execução. Um é iniciado pelo init e é todo o sistema e o outro é iniciado para o usuário quando ele efetuou login. Observando a estrutura de árvore PID completa (com pstree ), você pode localizar visualmente exatamente qual processo iniciou a segunda instância.

    
por Pithikos 05.11.2014 / 14:30

Tags