Какая программа запускает dbus-daemon?

Какая программа запускает процесс dbus-daemon для каждой пользовательской сессии в GNOME 2 и GNOME 3 (предположительно, через dbus-launch)? Я хотел бы знать, потому что я хотел бы добавить каталог в список каталогов, который dbus-daemon проверяет на наличие файлов .service.

(Очевидно, если это программа sh, «sh» - это не тот ответ, который я ищу; -)

Как я мог эффективно ответить на этот вопрос для себя? Какая документация есть при запуске рабочего стола и сеанса?

7
задан 29 October 2012 в 05:27

3 ответа

Менеджер входа в систему запускает dbus через каталог скриптов Xsession. Если для Xsession установлена ​​опция use-session-dbus, загружается сценарий dbus Xsession, и он запускается dbus-launch --exit-with-session $session_command.

0
ответ дан 29 October 2012 в 05:27

Запуск большинства задач и служб во время загрузки, включая демон Dbus, выполняется Upstart .

Dbus-демон запускается не за сеанс пользователя, а при монтировании последней локальной файловой системы . Обработка конфигурации задания на запуск, запуск / остановку / мониторинг демона Dbus можно найти в /etc/init/dbus.conf.

Вы можете использовать пользовательское задание , чтобы запустить Hamster при графическом входе в систему .

0
ответ дан 29 October 2012 в 05:27

Я не соглашусь с dobey. Лучшая вещь сделать состоит в том, чтобы изучить, как найти его для себя.

Перечислите все процессы и их древовидную структуру 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
....

Таким образом, dbus-демон запускается init. Однако заметьте, что существует больше чем один dbus-демон, работающий.

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

Существует а именно, (по крайней мере) два экземпляра dbus-демона, работающего. Каждый запускается init, и это в масштабе всей системы, и другой запускается для пользователя, когда он вошел в систему. Наблюдение полной древовидной структуры PID (с pstree) можно визуально расположиться точно, какой процесс запустил второй экземпляр.

-1
ответ дан 29 October 2012 в 05:27

Другие вопросы по тегам:

Похожие вопросы: