Несколько часов назад значок Dropbox в Xubuntu 14.04 прекратил работу. Значок черный с красным носом. Я не могу нажать на него, чтобы открыть меню Dropbox. Я считаю, что до этого произошло обновление. Я переустановил, затем очистил Dropbox. Я даже удалил все связанные файлы и скрытые папки и после того, как я их снова установил. Тем не менее, значок не работает. Пытался остановиться и начать службу ... снова ничего.
В отличие от решения, предложенного kk78, следующий метод решает проблему раз и навсегда:
/usr/bin/dropbox
с помощью текстового редактора (как администратор). Например, в терминальном прогоне gksudo gedit /usr/bin/dropbox
import os
и добавьте следующее: os.environ['DBUS_SESSION_BUS_ADDRESS'] = ""
Теперь Dropbox будет работать нормально:
Это исправляет это.
В меню «Dropbox» перейдите в «Настройки». Снимите флажок «Начать Dropbox при запуске системы»
Перейдите в раздел «Сессия» и «Запуск»> «Автозапуск приложения» и добавьте следующий элемент запуска:
bash -c 'export DBUS_SESSION_BUS_ADDRESS="" && dropbox start -i'
DBUS_SESSION_BUS_ADDRESS= dropbox start -i
. Но некоторые люди сообщают, что dbus-launch dropbox start -i
работает лучше.
– jarno
4 October 2016 в 08:35
name=value
, поэтому необходимо использовать env
. Использование env
работает повсеместно.
– blujay
8 October 2016 в 06:07
[Это мой устаревший ранний ответ, теперь он исследует эти и связанные с ними ошибки; для более новых и более эффективных обходных решений без изменения прав на файл / восстановление неудобства sudo, см. ответ kk78 вместо этого или в командной строке "dropbox stop && dbus-launch dropbox start"
в другом ответе]
Эта ошибка с иконкой в Dropbox для связи с разрешениями.
Пока он не будет исправлен, временное обходное решение из командной строки (Konsole, Terminal и т. д.), которое работает в эти дни для пользователей Xubuntu, Linux Mint и т. д .:
dropbox stop
sudo dropbox start
Примечание:
Сведения о "sudo" , запуске Dropbox с правами root, устраняет ошибку разрешения, а значок в трее снова работает правильно.
Однако у него есть небольшой вторичный эффект наличия нескольких файлов в скрытой папке ~ / .dropbox / , принадлежащих корню теперь вместо пользователя (как вы можете видеть, например, файловый менеджер, такой как Dolphin), и поэтому root-пароль запрашивается при запуске Dropbox.
Это нормально в качестве временного обходного пути, чтобы полностью открыть иконку Dropbox в Linux, пока ошибка, как мы надеемся, не будет исправлена следующий u pdate, но если исправление не восстанавливает правильные разрешения, в этом гипотетическом случае быстрое решение после исправления ошибок будет:
sudo dropbox stop
sudo chown -R USER:GROUP /home/USER/.dropbox
dropbox start
Конечно, вместо USER и GROUP. Например, если вы являетесь соавтором Unix, UTF-8, языка Go и т. Д.;) Это будет примерно так:
sudo chown -R ken:ken /home/ken/.dropbox
Обновление:
Извините, Я только что видел что-то, что делает этот временный обходной путь все еще работоспособным, но менее удобным: не только те немногие уже упомянутые файлы в скрытой папке ~ / .dropbox получают принадлежащие root, а также файлы, загруженные с Dropbox-серверы в папку Dropbox (обычно ~ / Dropbox ) на компьютере, на котором запущен Dropbox с правами root.
Итак, я все еще использую этот обходной путь до исправления ошибки, но если мы хотим использовать его, мы должны применить линию восстановления разрешений также к папке Dropbox, по крайней мере, когда мы хотим отредактировать наши загруженные документы. Например:
sudo chown -R USER:GROUP /home/USER/Dropbox
Чтобы сэкономить время и применить его при запуске компьютера, мы можем включить его в простой сценарий оболочки, например. текстовый файл dropbox.sh с исполняемым свойством, который мы можем запустить из командной строки или щелчком мыши:
#!/bin/bash
dropbox stop
sudo dropbox start
sudo chown -R USER:GROUP /home/USER/Dropbox
Простой альтернативный способ обхода:
Вместо всех предыдущих процедур, если иметь дело с изменениями и восстановлениями файлов, и т. д. слишком неудобно, самой простой альтернативой является, вероятно, просто подождать исправления ошибок Dropbox без использования значка и просто проверить статус Dropbox со времени к времени, используя командную строку:
dropbox status
Результат, если Dropbox работает, большую часть времени будет: «До настоящего времени» .
Позже, возможно, вы можете использовать стрелку вверх, чтобы быстро запустить эту строку снова из небольшого окна командной строки, которое вы можете сохранить открытым.
См. дополнительную помощь в командной строке, просто набрав:
dropbox
Как уже было сказано, чтобы прекратить использование другого обходного пути (sudo), восстановить нормальное владение файлами и снова запустить Dropbox снова, как обычный пользователь вместо root, используйте только один раз (заменив USER и GROUP):
sudo dropbox stop
sudo chown -R USER:GROUP /home/USER/Dropbox
sudo chown -R USER:GROUP /home/USER/.dropbox
sudo chown -R USER:GROUP /home/USER/.dbus
dropbox start
Новое обновление:
См. ответ kk78 на этот вопрос с гораздо лучшим обходом, чем у меня, и с иконкой в Dropbox в качестве обычного пользователя, а не root. Он работает, по крайней мере, для Xubuntu и Linux Mint.
Он также может использоваться как сценарий оболочки:
#!/bin/bash
dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start
Я запускаю ту же ОС, Xubuntu 14.04 x64, и вижу этот значок, который не реагирует на щелчки (нет меню):
Release примечания для 3.14.5 (который появился с 9 февраля 2016 года и был установлен на моей машине) указывают, что Dropbox обновлен для использования Qt 5.5 в Linux.
Выполнение следующих дает версию Qt на моей машине:
~$ qmake -v
QMake version 3.0
Using Qt version 5.2.1 in /usr/lib/x86_64-linux-gnu
Итак, я обновлен до Qt 5.5, используя инструкции отсюда .
Это шаги, которые я сделал:
sudo apt-add-repository ppa:beineri/opt-qt551-trusty
sudo apt-get update
sudo apt-get install qt-latest qtcreator-latest
Затем я установил следующее в ~/.bashrc
и перезапустил сеанс:
export QT_SELECT=opt-qt55
Я проверил У меня теперь установлен Qt 5.5:
~$ qmake -v
QMake version 3.0
Using Qt version 5.5.1 in /opt/qt55/lib
Затем переустановите Dropbox и перезапустите сеанс:
sudo apt-get remove dropbox
sudo apt-get install nautilus-dropbox
К сожалению, это не помогло, и значок в трее появился. тот же.
Затем я задался вопросом, будет ли удаляться индикатор-плагин с панели Xfce4.
~? dropbox stop && dropbox start
Затем неожиданно на панели уведомлений появляется значок дикого сброса!
Кажется, что значок Dropbox нравится проживать в панели уведомлений, но не в плагине индикатора.
Но ... Мне нравится плагин Indicator, поскольку он дает мне оповещения по электронной почте и контроль уровня громкости. Итак, я снова добавил его в панель. Пока что, хорошо.
Но после повторного запуска сеанса я снова получаю эту чушь:
So , теперь я застрял. Я не знаю, как сделать значок Dropbox отображаться в панели уведомлений вместо панели индикаторов, и я уверен, что не будет повторять эти шаги каждый раз, когда я вхожу в систему!
dropbox start
с DBUS_SESSION_BUS_ADDRESS=""
было недостаточно, чтобы выпустить Dropbox из плагина индикатора.
– BSchlinker
22 February 2016 в 00:08
DBUS_SESSION_BUS_ADDRESS=""
?
– jarno
4 October 2016 в 09:13
(проверено на xbuntu 17.04)
Чтобы перезапустить dropbox с правильным значком в трее: dropbox stop && dbus-launch dropbox start
Dropbox заменяет файл автозапуска ~/.config/autostart/dropbox.desktop
при запуске с /usr/share/applications/dropbox.desktop
. Чтобы сделать исправление постоянным, измените последнее:
sudo sed -i 's/Exec=dropbox start -i/Exec=dbus-launch dropbox start -i/' /usr/share/applications/dropbox.desktop
Вы также можете изменить панель запуска главного меню:
sed 's/Exec=dropbox start -i/Exec=dbus-launch dropbox start -i/' ~/.local/share/applications/dropbox.desktop
Я изменил сценарий ~/.dropbox-dist/dropboxd
следующим образом и перезагрузился и получил значок назад. & nbsp; Поскольку этот файл перезаписывается обновлениями, я думаю, что мне не придется ничего отменить, если они исправят проблему при следующем обновлении.
#!/bin/sh
export DBUS_SESSION_BUS_ADDRESS=""
PAR=$(dirname "$(readlink -f "$0")")
exec "$PAR/dropbox-lnx.x86-3.14.7/dropboxd" "$@"
Обновление: когда я попробовал это на своем ноутбуке, Сначала работайте. Я понял, что у меня была та же проблема, что и у меня с «Копировать», когда сохранение сеанса XFCE4 начиналось с Dropbox до того, как был запущен официальный файл запуска. Я изменил файл ~ / .profile, чтобы удалить любые * .state и * session * файлы в ~./cache/sessions
rm -f /home/jhm/.cache/sessions/*.state
rm -f /home/jhm/.cache/sessions/*session*
Update # 2: Так что теперь, используя версию 3.18.1, проблема все еще существует. Я знаю, потому что, как я и предсказывал, сценарий ~/.dropbox-dist/dropboxd
был перезаписан каждым обновлением, в результате чего проблема возвращалась каждый раз. Исправление выше работает надежно при загрузке Xubuntu 14.04, при условии, что восстановление сеанса напрямую не запускает двоичный файл:
/home/<user>/.dropbox-dist/dropbox-lnx.x86-3.18.1/dropbox
Использование «System / Session and Startup» в разделе «Session» Я вижу, что двоичный файл является видимым и будет перезапущен, если я не удалю файлы * сессии и *.
В качестве эксперимента я попытался использовать Upstart для запуска Dropbox до начала сеансового отслеживания. Сначала я создал папку /home/jhm/.init
, затем к ней был добавлен файл с именем dropbox.conf
, содержащий:
description "Dropbox"
start on desktop-start
expect daemon
exec /usr/bin/dropbox start
Я использую этот метод на своем ноутбуке Dell Xubuntu 14.04, и теперь программа скрыта от отслеживание сеанса, поэтому мне не нужно удалять файлы.
Поскольку dbus-launch
создает новую приватную шину сеанса DBUS, DropBox никогда не найдет службу appindicator, поскольку это будет единственный процесс на этой шине ( кроме DBUS), так что примерно то же, что и export DBUS_SESSION_BUS_ADDRESS=""
. Оба решения заставляют DropBox отступать к API-интерфейсу системы. Это называется «Область уведомлений» на вкладке «Элементы панели XFCE». Убедитесь, что он не был удален с панели.
Используя d-feet
и dbus-monitor
, я обнаружил, что проблема была в том, что DropBox не смог реализовать интерфейсы «Menu» на несуществующем / MenuBar Путь DBUS. Вентиляторы DBUS могут исследовать org.kde.StatusNotifierWatcher
с помощью d-feet
, чтобы узнать больше. Поскольку двоичный файл dropbox отвечает за поддержку этих интерфейсов, нечего делать, кроме как ждать следующего обновления. BTW, все необходимые QT5.5 библиотеки включены в программу. Нет необходимости загружать пакеты разработки.
Я также обнаружил, что только диалоговое окно GUI, похоже, надежно сохраняет файл запуска от переустановки. После того, как «Начать DropBox при запуске системы» был снят, он остался таким.
sed -i.bak '/#!\/bin\/sh/a export DBUS_SESSION_BUS_ADDRESS=""' ~/.dropbox-dist/dropboxd; dropbox stop && dropbox start
– bmaupin
27 February 2016 в 15:46
/usr/share/upstart/sessions
– user411778
7 October 2016 в 02:39
/usr/bin
. Это ошибка в Dropbox, которая в конечном итоге должна быть исправлена, и это обходное решение может сломать исправление из Dropbox, оставив очень запутанного пользователя. Лучше использовать обходной путь, например, редактирование файла автозапуска, запускающего Dropbox. – blujay 11 March 2016 в 04:32