我已经在CentOS 7服务器上安装了Git和libsecret。我使用git-credentials-store将凭证以明文形式存储在服务器上。现在我想使用libsecret,但不幸的是,如果我将git-credential-libsecret配置为凭据助手,则会遇到D-Bus错误。
我已经安装了dbus和dbus-x11,并通过以下命令启动了dbus,但仍然出现错误。
dbus-launch --sh语法
错误:
$ git pull origin master
**(进程:66155):严重**:08:19:33.936:无法连接至特勤局:没有X11 $ DISPLAY,无法自动启动D-Bus
**(进程:66160):严重**:08:19:34.209:存储失败:没有X11 $ DISPLAY,无法自动启动D-Bus
编辑:
安装gnome-keyring后,出现以下错误
**消息:14:10:49.566:来自秘密服务的远程错误:org.freedesktop.DBus.Error.UnknownMethod:路径/ org / freedesktop /上的对象上没有这样的接口“ org.freedesktop.Secret.Collection”秘密/收藏/登录
答案 0 :(得分:1)
您需要使用export $(dbus-launch)
来评估dbus-launch
输出的变量,以便在您的环境中设置${DBUS_SESSION_BUS_ADDRESS}
。另请参阅:How to export DBUS_SESSION_BUS_ADDRESS
如果您的环境中未设置${DBUS_SESSION_BUS_ADDRESS}
,则D-Bus客户端库将假定没有dbus-daemon
正在运行,并将尝试自动启动。没有${DISPLAY}
,这是不可能的;因此,您会看到错误消息。
答案 1 :(得分:0)
您可以无头运行它,但是您需要遵循Python密钥环程序包的建议来“欺骗”它。
https://keyring.readthedocs.io/en/latest/#using-keyring-on-headless-linux-systems