D-Bus (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи D-Bus. Дата последней синхронизации: 23 декабря 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

D-Bus — это система межпроцессного взаимодействия, реализующая шину сообщений. Она состоит из демона, который может работать как на уровне всей системы, так и для каждого пользовательского сеанса в отдельности, и набора библиотек, позволяющих приложениям использовать D-Bus.

Пакет dbus устанавливается автоматически как зависимость systemd. Шины для пользовательских сеансов запускаются автоматически.

Альтернативные реализации

dbus-broker

dbus-broker — прозрачная замена libdbus, цель которой «обеспечить высокую производительность и надежность при сохранении совместимости с эталонной реализацией D-Bus». [1]

Для запуска dbus-broker в качестве системной шины сперва отключите службу dbus.service, а затем включите службу dbus-broker.service.

Для запуска dbus-broker в качестве пользовательской шины включите пользовательскую службу dbus-broker.service.

Чтобы задействовать его для всех пользователей, включите его с опцией --global:

# systemctl --global enable dbus-broker.service

Перезагрузитесь для применения изменений.

Советы и рекомендации

Переопределение службы dbus

Вы можете переопределить службы dbus в каталоге ~/.local/share/dbus-1/services.

Если служба уже запущена, переопределение не сработает; необходимо убить существующий процесс службы.

Отладка

  • D-Feet — Простой в использовании графический инструмент отладки D-Bus. Можно использовать для проверки интерфейсов D-Bus запущенных программ и вызова методов на этих интерфейсах.
https://wiki.gnome.org/Apps/DFeet || d-feet
  • QDbusViewer — Графический отладчик D-Bus. Можно использовать для проверки служб D-Bus и вызова их методов.
https://doc.qt.io/qt-5/qdbusviewer.html || qt5-tools

Таже можно использовать команду busctl(1), которую предоставляет systemd.

Смотрите также