8.77. D-Bus-1.14.10

D-Bus это система межпроцессного взаимодействия, реализующая шину сообщений. D-Bus предоставляет системного демона (для таких событий, как «добавление нового аппаратного устройства» или «изменение очереди печати»), и демона сеанса входа в систему для каждого пользователя (для общих потребностей IPC среди пользовательских приложений). Кроме того, шина сообщений построена поверх общей схемы взаимной передачи сообщений, которая может использоваться любыми двумя приложениями для прямого взаимодействия (без использования демона шины сообщений).

Приблизительное время сборки: 0.1 SBU
Требуемое дисковое пространство: 19 MB

8.77.1. Установка пакета D-Bus

Подготовьте D-Bus к компиляции:

./configure --prefix=/usr                        \
            --sysconfdir=/etc                    \
            --localstatedir=/var                 \
            --runstatedir=/run                   \
            --enable-user-session                \
            --disable-static                     \
            --disable-doxygen-docs               \
            --disable-xml-docs                   \
            --docdir=/usr/share/doc/dbus-1.14.10 \
            --with-system-socket=/run/dbus/system_bus_socket

Значение параметров настройки:

--runstatedir=/run и --with-system-socket=/run/dbus/system_bus_socket

Параметр устанавливает расположение PID-файла и сокета системной шины в /run вместо устаревшего /var/run.

--enable-user-session

Это гарантирует, что юнит-файлы (service и socket) D-Bus демона Systemd будут установлены для каждого пользователя. Они бесполезны (но при этом безвредны) при базовой установке LFS, однако их можно использовать после пересборки systemd с поддержкой PAM в BLFS.

Скомпилируйте пакет:

make

Чтобы протестировать пакет, выполните:

make check

Многие тесты отключены, поскольку для них требуются дополнительные пакеты, которые не включены в LFS. Инструкции по запуску полного набора тестов можно найти в книге BLFS.

Установите пакет:

make install

Создайте символическую ссылку, чтобы D-Bus и systemd могли использовать один и тот же файл machine-id:

ln -sfv /etc/machine-id /var/lib/dbus

8.77.2. Содержимое пакета D-Bus

Установленные программы: dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor, dbus-run-session, dbus-send, dbus-test-tool, dbus-update-activation-environment и dbus-uuidgen
Установленные библиотеки: libdbus-1.so
Созданные каталоги: /etc/dbus-1, /usr/include/dbus-1.0, /usr/lib/dbus-1.0, /usr/share/dbus-1, /usr/share/doc/dbus-1.14.10 и /var/lib/dbus

Краткое описание

dbus-cleanup-sockets

используется для удаления оставшихся сокетов в каталоге

dbus-daemon

Демон шины сообщений D-Bus

dbus-launch

Запускает dbus-daemon из сценария оболочки

dbus-monitor

Отслеживает сообщения, проходящие через шину сообщений D-Bus

dbus-run-session

Запускает экземпляр шины dbus-daemon из сценария оболочки и запускает указанную программу в этом сеансе

dbus-send

Отправляет сообщение на шину сообщений D-Bus

dbus-test-tool

Инструмент, помогающий пакетам тестировать D-Bus

dbus-update-activation-environment

Обновляет переменные среды, которые будут установлены для сеансовых служб D-Bus

dbus-uuidgen

Генерирует универсальный уникальный идентификатор UUID

libdbus-1

Содержит функции API, используемые для связи с шиной сообщений D-Bus