Dropbox 图标不起作用 - 无法创建 ~/.dbus/session-bus

Dropbox 图标不起作用 - 无法创建 ~/.dbus/session-bus

刚刚安装了 16.04。之前使用同样的硬件 D​​ropbox 可以正常工作。由于硬盘崩溃,重新安装了操作系统,并安装了 Dropbox。Dropbox 图标出现了,但无法使用,因为菜单没有出现。这是一个众所周知的问题,至少从 14.04 开始就存在了。

有多个地方提到了一个修复方法,例如这里

 dropbox stop
dbus-launch ~/.dropbox-dist/dropboxd start -i

理论上,这将使用系统托盘(“通知区域”)图标启动 Dropbox,而不是无功能的“指示区域”图标。

当我尝试使用 dbus-launch 时,收到以下错误消息:

$ dbus-launch dropbox start -i
 Unable to create /home/~/.dbus/session-bus

通过谷歌搜索并深入研究该错误,我陷入了困境,发现很多我不明白的东西。例如,阅读 dbus-launch 的手册页,却一句都看不懂。我认为这超出了我的能力范围。我还尝试以 SU 身份启动命令 dbus-launch dropbox start -i,但出现了同样的错误。我知道以 sudo 身份启动 dropbox 不会长期有效,我只是在找借口。

我可以使用 dropbox 命令行界面,但是它不允许我登录我的帐户、为 dropbox 设置不同的文件夹等等。

我该如何使用 Dropbox GUI 界面并解决此错误?

[编辑] 还尝试使用

dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start

这没有产生错误消息,但是图标下拉菜单仍然不起作用并且 dbus-launch 方法仍然产生相同的错误消息。

[编辑] 尽管有错误,但这个图标现在似乎可以正常工作,原因不明。请参阅下面我对我自己的问题的回答。

答案1

尽管连续几次都没有起作用,但以下一系列操作似乎可以让图标恢复功能:

dropbox stop
dbus-launch ~/.dropbox-dist/dropboxd start -i

这会导致错误“无法创建 /home/~/.dbus/session-bus”然后:

dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start

这没有产生任何输出,但是图标也不起作用。

重启。图标及其菜单现在似乎可以正常工作了。再次重启。同样的问题再次出现 - 菜单不起作用。

dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start

相同的错误消息,“无法创建 /home/~/.dbus/session-bus”,但是 Dropbox 图标重新出现在托盘上的不同位置,并且菜单可以正常工作。

最新消息:@Harris 找到了一种消除错误信息的方法

sudo chown username.username -R .dbus

接下来我将尝试将 dbus 命令放入 dropbox 自动启动文件中。

[编辑] 现在 Dropbox 图标菜单可以正常工作了,我可以继续修改自动启动。
首先,打开图标菜单并取消选中“系统启动时启动 Dropbox”。

我复制了我的桌面条目:Dropbox 每次启动时都会替换它,所以你不能直接编辑它:

cp ~/.config/autostart/dropbox.desktop ~/.config/autostart/start_dropbox.desktop

然后编辑新文件如下:

    [Desktop Entry]
Name=Dropbox
GenericName=File Synchronizer
Comment=Sync your files across computers and to the web
#Exec=dropbox start -i
Exec=dbus-launch dropbox start -i
Terminal=false
Type=Application
Icon=dropbox
Categories=Network;FileTransfer;
StartupNotify=false

最后进入应用程序 > 系统工具 > 偏好设置 > 启动应用程序,发现现在有两个 Dropbox 实例作为启动程序。取消选中原来的程序,将另一个重命名为 Dropbox With Icon Fixed。

在命令提示符下尝试过

dropbox autostart n

其中大部分内容已审核这里

在我的情况下,这种差异就是错误消息。尽管有错误消息,但黑客似乎仍然有效。

相关内容