D-Bus
跳转到导航
跳转到搜索
环境变量
DBUS_SESSION_BUS_ADDRESS
指定要连接的服务器地址。格式示例[1]
unix:abstract=/tmp/dbus-GPA39Qo9UP tcp:host=192.168.21.2,port=8474 unix:path=/tmp/dbus.sock
技巧
连接至远程 D-Bus
可以通过 ssh 转发套接字。但由于用户认证任意套接字时传输了 uid,因此当本地与远程 uid 不一致时会鉴权失败。使用 bwrap 命令将套接字地址绑定到系统默认地址则可以成功,因为此情况下鉴权并未发送 uid。如:
bwrap --dev-bind / / --bind ~/tmpfs/dbus.sock /run/dbus/system_bus_socket dbus-monitor --system
配置文件
监听地址
listen
元素指定要监听的地址。unix:tmpdir=/tmp
指定 /tmp
开头的地址,但是在支持的平台上使用抽象套接字;unix:dir=/tmp
则一定使用文件。
参见
- qdbus
- dbus-send
- dbus-monitor
- d-feet
外部链接
- D-Bus Specification
- 使用 D-BUS 连接桌面应用程序
- D-Bus Tutorial
- 什么是D-Bus? | CS Slayer
- 基于DBus的进程间通信(IPC) - 喜洋洋's Blog
- The new sd-bus API of systemd