小编Mer*_*lyn的帖子

如何以 root 身份正确启动 dbus-monitor --session?

我正在编写一个脚本,该脚本将检测 Gnome 会话是否以及何时被用户“锁定”,以踢出该用户并防止人们在公共使用实验室中锁定屏幕。但是,似乎唯一的方法是启动一个 dbus-monitor,如下所示:

dbus-monitor --session \ "type=signal,interface=org.gnome.ScreenSaver"
Run Code Online (Sandbox Code Playgroud)

不幸的是,无论我尝试了多少事情,我都无法以 root 身份运行它。我尝试了以下方法:

1

eval `dbus-launch`
dbus-monitor --session ...
Run Code Online (Sandbox Code Playgroud)

这无法启动并出现相同的错误

2

export $(dbus-launch)
dbus-monitor --session ...
Run Code Online (Sandbox Code Playgroud)

这将启动但未成功监视消息。

3

eval `dbus-launch`
export DBUS_SESSION_BUS_ADDRESS
dbus-monitor --session ...
Run Code Online (Sandbox Code Playgroud)

这会启动但不监视消息

当我得到 X11 会话错误时的确切错误如下:

Failed to open connection to session message bus: dbus-launch failed to autolaunch D-Bus session: Fd 4 did not have the close-on-exec flag set!  Setting the flag.
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified

Autolaunch error: X11 initialization failed.
Run Code Online (Sandbox Code Playgroud)

很简单,我需要能够远程监控会话 …

linux redhat gnome dbus

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

dbus ×1

gnome ×1

linux ×1

redhat ×1