Xubuntu 14.04 LTS 64で動作しないDropboxアイコンを修正する方法


92

数時間前、Xubuntu 14.04のドロップボックスアイコンが機能しなくなりました。アイコンは黒で、赤いスラッシュの付いたゼロです。クリックしてドロップボックスメニューを表示することはできません。これが起こる直前にアップデートがあったと思います。Dropboxを再インストールしてから削除しました。関連ファイルと隠しフォルダーをすべて削除し、再度インストールした後です。それでも、アイコンは機能していません。サービスを停止および開始しようとしました...再び何も。


Dropboxはいつでもダウングレードできます。3.12.5を使用していますが、アイコンの問題はありません。Dropboxがすぐに自動更新しないことを願っています。ただし、これをブロックする方法もあります。forums.linuxmint.com/... dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-3.12.5.tar.gz
jbrock

5
Dropboxに必要なすべての詳細を含むこのバグを報告しました。Linux Mintでも同様の問題がありました。彼らは、バグが修正されたバージョンまで、私のDropboxのアップグレードを延期しました。私は有料ユーザーであり、24〜48時間以内に回答を受け取るべきであると述べています。重要な情報が返信された場合は、必ずここに投稿します。
jbrock

最初にアンインストールせずにダウングレードできる場合があります。これにより、すべてのDropboxファイルの完全なインデックス再作成が回避される場合があります。バグが修正されるまでアイコンの問題が修正される可能性があり、その後、更新プログラムがプッシュされます。
jbrock

@jbrock、どうすればそれができますか?
マルクタニ

1
このバグはUbuntuの17.10と作業以下のどれに再表示されます
スコットStensland

回答:


97

Xubuntu 15.10にこのバグがあり、アイコンが壊れており、メニューを開くことができません。バグはDropboxに接続されており、トレイアイコンに「通知領域」ではなく「インジケータ領域」を使用し始めていると思います。また、環境変数がsudoセッションで使用されていないため、sudo-fixが機能するだけです。

少なくとも私にとって、この問題は以下を実行することで修正できます:

dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start

これは、アイコンとメニューの両方を修正する「通知領域」にアイコンを戻すようです。このようにして、デーモンはルートとしてではなく、通常のユーザーとして実行されます。

編集:この修正に基づいてDropbox用の独自の起動スクリプトを作成する場合は、「dropbox autostart n」コマンドでデフォルトの起動スクリプトを無効にすることを忘れないでください(これについてはStockBreakに感謝します。

EDIT2:...そして何らかの理由で、Dropbox GUIから自動起動設定を削除する必要がありました(システムの起動時にアイコン>>環境設定>> Dropboxを起動)。この後はオフのままにしてください。

編集:セッションが開始するたびに実行されるスクリプトにこの修正を実装するには、次の解決策を試してください:https : //askubuntu.com/a/795864/496493


このkk78の回避策も正常に機能し、通常のユーザーにトレイアイコンを提供します。このためにStockBreakのデスクトップエントリを試したことはありませんが、おそらく同様に動作します。代わりに、#!/ bin / bash行とkk78の行を、実行可能なプロパティを持つ「dropboxicon.sh」テキストファイルの単純なシェルスクリプトとして使用し、バグが発生するまで>アクション> Konsoleで実行します。一定。この回避策はうまく機能します。ありがとうございました。
フアンM.ゴンザレス

Xubuntu 14.04 64bit LTS-同じ正確な問題を確認し、上記の回避策でトリックを確認しました(すべて一時的に)。
-demaniak

Kubuntu 14.04でも同じ問題があり、ここでも問題は解決しました!
ダニエルフィッシャー

最終的には16.04でも機能しましたが、別indicator-appletのパネルをインストールして追加する必要がありました(既に使用可能および存在するものは別としてindicator-applet-complete)。これは、Ubuntu 16.04 x86の新規インストール(非常に古い東芝製ラップトップ)で、とのgnome-fallbackセッションを実行していmetacityます。
Avio

2
17.04では、以下の「新しい回避策」を試すことができますdropbox stop && dbus-launch dropbox start。私は自分のラップトップ(現在はXubuntu 17.04)で使用していますが、問題はありません。Dropboxがこれを修正したら本当にいいだろう
...-kk78

83

新しい回避策が提案し、ファイルC.は、ある「dbusの発射ドロップボックスは、-i開始します」

以下の適応は、少なくともLinuxディストリビューションFedora、Gentoo、Kubuntu、Linux Mint、openSUSE、Slackware、Ubuntu、Xubuntu ...、およびデスクトップ環境Cinnamon、KDE ​​4、KDE ​​5、Mate、Unity、 Xfce ...

この新しいdbus-launchの回避策は、以前のDBUS_SESSION_BUS_ADDRESSの回避策よりも少し速く、より高い信頼性で、多くの場合に機能するようです。

コマンドラインとして:

dropbox stop && dbus-launch dropbox start

または、シェルスクリプトファイルとして:

#!/bin/bash

dropbox stop && dbus-launch dropbox start

16
コマンドラインコマンドは優れた機能を発揮しますが、そのセッションでのみ機能します。修正を永続的にするには、このコマンドを実行した後、Dropboxインジケーター>環境設定...>システムの起動時にDropboxを開始のチェックを外します。次に、dbus-launch dropbox start[セッションとスタートアップ]> [アプリケーションの自動起動]に追加します。これはXubuntu 16.04 LTSで完全に機能します。
Ads20000

3
これが、Ubuntu Mint xenial 16.04 LTSで機能させる唯一の方法でした。
-allebone

3
迷惑なことに、コメントを編集できません。アプリケーションの自動起動コマンドはおそらくdbus-launch dropbox start -i(これはUbuntu(GNOME)Flashback 16.10で動作し、Xubuntuでも動作するかどうかにかかわらず
idk

3
これはlubuntu 16.4
jumpnett

2
DBUS_SESSION_BUS_ADDRESS=""解決策は、私のために何もしなかったが、これが働いていました!Linux Mint 17.3の実行。
サンポ

27

kk78が提案するソリューションとは異なり、次の方法は問題を完全に解決します。

  1. Dropboxを閉じます。

  2. /usr/bin/dropboxテキストエディターで(管理者として)ファイルを開きます。たとえば、ターミナルで実行

    gksudo gedit /usr/bin/dropbox
    
  3. 後に新しい行を作成しimport os、次を追加します。

    os.environ['DBUS_SESSION_BUS_ADDRESS'] = ""
  4. 保存して再起動

これで、Dropboxは正常に機能します。

Gifチュートリアル


行を追加する方法、これが機能する理由を答えてください。
DnrDevil

DnrDevil、DBUS_SESSION_BUS_ADDRESS = "" dropbox startと同様に機能しますが、より直接的な方法です。
-darl

3
@DnrDevilテキストファイルの編集が必要な質問に回答するたびに、テキストファイルを編集する方法の新しい説明を書くのはばかげているでしょう。
ブルージェイ

2
@darlこれは面白いアイデアですが、私は一般的にで編集することをお勧めし/usr/binます。これはDropboxのバグであり、最終的に修正する必要があります。この回避策はDropboxの修正を破り、非常に混乱したユーザーを残す可能性があります。Dropboxを起動する自動起動ファイルの編集などの回避策を使用することをお勧めします。
ブルージェイ

@blujayあなたが新しいユーザーに質問に答えない限り、彼らは端末を使用することはないかもしれないと完全に同意します
-DnrDevil

22

kk78のソリューションのおかげで、この完全な回避策を講じました(他の投稿も参照してください)。

デスクトップエントリをコピーしました*

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

エントリを次のように変更しました(env単語に注意してください):

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

Dropboxの自動起動を無効にしました:

dropbox autostart n

* Dropboxはログインするたびにファイルを置き換えるため、編集することはできません。


1
明確にするために、これでうまくいきました:start_dropbox.desktopファイルを編集します(マウスパッドなどを使用して)
dez93_2000

別の注意:menulibre(またはメニューシステム)では、コマンドエントリを「dropbox start -i」から「env DBUS_SESSION_BUS_ADDRESS = "" dropbox start -i」に変更する必要があります。そのため、メニューから起動すると正しいものが実行されます。
dez93_2000

8

[これは私の非推奨の初期の回答であり、現在、このバグと関連するバグを調査するために保持されています。sudoのファイル所有権の変更/回復の不便を伴わないより新しくより良い回避策については、代わりにkk78の回答、または"dropbox stop && dbus-launch dropbox start"別の回答のコマンドラインを参照してください]

このDropboxトレイアイコンのバグは、権限に関連しているようです。

修正されるまで、コマンドライン(Konsole、Terminalなど)からの一時的な回避策があります。これは最近Xubuntu、Linux Mintなどのユーザー向けに機能しています。

dropbox stop
sudo dropbox start

注意:

"sudo"について、Dropboxをルートとして実行すると、権限のバグが克服され、トレイアイコンが再び正常に機能します。

ただし、ユーザーの代わりにルートが所有する隠しフォルダー〜/ .dropbox /にいくつかのファイルを保持するという小さな二次的な効果があります(たとえば、Dolphinなどのファイルマネージャーで見ることができます)。 Dropboxの起動時に要求されます。

これは、次のアップデートでバグが修正されるまでDropboxトレイアイコンがLinuxで完全に機能するようにする一時的な回避策としては問題ありませんが、修正で正しいアクセス許可が復元されない場合は、仮想ケースではバグ後の迅速な解決策です修正されます:

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フォルダー内の既に言及されたこれらのいくつかのファイルがルートによって所有されるだけでなく、DropboxサーバーからDropboxにダウンロードされたファイルもルートとしてDropboxを実行しているコンピューター上のフォルダー(通常〜/ Dropbox)。

そのため、バグ修正までこの回避策を使用していますが、使用する場合は、少なくともダウンロードしたドキュメントを編集する場合は、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)の使用を停止し、通常のファイル所有権を回復し、rootではなく通常のユーザーとしてDropboxの実行を再開するには、1回だけ使用します(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トレイアイコンはルートではなく通常のユーザーです。少なくともXubuntuとLinux Mintで機能します。

シェルスクリプトとしても使用できます。

#!/bin/bash

dropbox stop && DBUS_SESSION_BUS_ADDRESS="" dropbox start

3
この回避策は、私のXubuntu 14.04 64で機能します。誰もが「sudo」に注意してください。ありがとう、フアン・M・ゴンザレス
user505080

しかし、最近だけrootで実行するという私の提案は本当に一時的な回避策であり、実際の解決策はDropboxによる簡単なバグ修正から得られるはずであることを覚えておく必要があります。
フアンM.ゴンザレス

実際には、アイコンなしの単純な「ドロップボックスステータス」回避策は、アイコン付きの他の「sudo dropbox start」回避策よりも優れていて便利であることがわかりました。
フアンM.ゴンザレス

新規:kk78の回答を参照してください。
フアンM.ゴンザレス

4

古いバージョンを使用したり、他の側面をいじったりする代わりに、小さなアイコンの代わりにこのスクリプトを使用することにしました。コマンドからの出力をdropbox statusパネルに直接配置します。ただし、同期中または最新の場合、小さなチェックマークまたは同期文字があります。

ターミナルに次を貼り付けて、汎用モニターをインストールします。

sudo apt-get install xfce4-genmon-plugin

Generic Monitorパネルプラグインを使用して実行するには、次のスクリプトを設定します。ラベルなしで行って、5秒ごとに実行するように設定しました。

#!/bin/bash

status=$(dropbox status)
if [ "$status" = "Up to date" ]; then
    echo "✔"
elif [[ "$status" == "Syncing"* ]] || [[ "$status" == "Indexing"* ]]  || [[ "$status" == "Downloading"* ]]; then
    echo "⟲"
else
    echo "$status"
fi

ログイン時にパスワードプロンプト(とにかく無視できる)が表示されないように、次を実行する必要があります。

sudo chown -R USER:GROUP ~/.dropbox

USER:GROUP 通常、ユーザー名は2回だけです。

設定を変更する必要がある場合は、Dropboxを起動しsudoて設定を変更します。このページに記載されているように起動sudoすると、小さなアイコンとメニューが表示されます。

さらに、必要に応じて、独自のDropboxアイコンまたは画像をエコーアウトできます。Dropboxコマンドラインが機能しない場合は、Dropbox pythonスクリプトをこちらからダウンロードできます。(私の場合、Dropbox Pythonスクリプト名に* .py拡張子を使用していません。)


とてもクール、これができるとは知らなかった!他の多くのことに役立ちます。乾杯。
シャーキー

とてもかっこいい!これを共有してくれてありがとう。Generic Monitorについて知りませんでした。
ブルージェイ

なぜbash -cだけではなくdropbox status
jarno

パネルに赤いアイコンがまだ表示されていますか?
jarno

@jarno私は最初はそれを置くだけでは機能しなかったというかすかな記憶を持ってい$(dropbox status)ます。しかし、何らかの理由で機能$(bash -c 'dropbox status')しました。$(dropbox status)すぐに使用できるので、それに応じてスクリプトを更新しました。知らせてくれてありがとうございます。
jbrock

3

~/.dropbox-dist/dropboxdスクリプトを次のように変更して再起動し、アイコンを取得しました。このファイルは更新によって上書きされるため、次回の更新で問題が修正された場合、元に戻す必要はないと思います。

#!/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*

更新#2:したがって、バージョン3.18.1を使用しても、問題は引き続き発生しています。私が知っているのは、私が予想したように、~/.dropbox-dist/dropboxdスクリプトが更新されるたびに上書きされ、そのたびに問題が発生するためです。上記の修正は、セッションの復元がバイナリを直接起動しない限り、Xubuntu 14.04ブートで確実に機能します。

/home/<user>/.dropbox-dist/dropbox-lnx.x86-3.18.1/dropbox

「システム/セッションとスタートアップ」を使用すると、「セッション」タブの下で、* sessionおよび* stateファイルを削除しなかった場合、バイナリが表示され、再起動されることがわかります。

実験として、セッショントラッキングを開始する前に、Upstartを使用してDropboxを起動してみました。最初に/home/jhm/.initフォルダを作成してから、というファイルdropbox.confを追加しました:

description "Dropbox"
start on desktop-start
expect daemon
exec /usr/bin/dropbox start

Dell Laptop Xubuntu 14.04でこの方法を使用していますが、プログラムはセッショントラッキングから隠されているため、ファイルを削除する必要はありません。

dbus-launch新しいプライベートDBUSセッションバスを作成するため、DropBoxはそのバス上の唯一のプロセス(DBUS以外)であるため、appindicatorサービスを見つけることができませんexport DBUS_SESSION_BUS_ADDRESS=""。これは、XFCEパネルアイテムタブでは「通知領域」と呼ばれます。パネルから削除されていないことを確認してください。

とを使用するd-feetdbus-monitor、DropBoxが存在しない「/ MenuBar」DBUSパスに「Menu」インターフェースを実装できないことが問題であることがわかりました。DBUSファンはorg.kde.StatusNotifierWatcher、詳細d-feetを調べるために一緒に探索できます。Dropboxバイナリはこれらのインターフェイスをサポートするため、次の更新を待つ以外に何もする必要はありません。ところで、必要なQT5.5ライブラリはすべてプログラムに含まれています。開発パッケージをダウンロードする必要はありません。

また、GUIダイアログのみが確実にスタートアップファイルを再インストールしないようにしていることもわかりました。「システムの起動時にDropBoxを起動する」のチェックを外すと、そのままでした。


1
上記の回避策は、すべてのマシンで機能しました。ありがとうございました。
rstreeter78

この修正のワンライナーは次のsed -i.bak '/#!\/bin\/sh/a export DBUS_SESSION_BUS_ADDRESS=""' ~/.dropbox-dist/dropboxd; dropbox stop && dropbox start
とおりです。– bmaupin

これはXubuntu 16.04でも適用できると思いますが、デフォルトではupstartの代わりにsystemdを使用します。
jarno

私の答えをご覧ください。驚いたことに、initスクリプトは、upstartではなくsystemdを使用している場合でも、Xubuntu 16.04でも機能しました。
jarno

systemdが展開された後もupstartがユーザーモードサービスに使用されることをどこかで読んだことがあります。サービスのリストは /usr/share/upstart/sessions
user411778

2

同じOS Xubuntu 14.04 x64を実行すると、クリックに反応しないこのアイコンが表示されます(メニューなし)。

Xfce4-PanelのDropboxアイコン

3.14.5のリリースノート(2016年2月9日に到着し、私のマシンにインストールされました)は、LinuxでQt 5.5を使用するためにDropboxが更新されたと述べています。

以下を実行すると、私のマシンで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-panelからインジケータープラグインを削除しても機能するかどうか疑問に思いました。

  1. インジケータープラグインを削除
  2. ~? dropbox stop && dropbox start

その後、突然、通知パネルにワイルドドロップボックスアイコンが表示されます!

Dropboxアイコンが表示されます

Dropboxアイコンは、通知プラグインではなく通知パネルに常駐しているようです。

しかし...私は電子メールアラートと音量レベルコントロールを提供するので、インジケータプラグインが好きです。それで、私はそれをパネルに再び追加しました。ここまでは順調ですね。

しかし、セッションを再開した後、私は再びこのでたらめを取得します:

Xfce4-PanelのDropboxアイコン

だから、今私は立ち往生しています。インジケーターパネルの代わりに通知パネルにDropboxアイコンを表示する方法がわかりません。ログインするたびにこれらの手順を繰り返さないことは間違いありません。


1
あなたが言ったように、「Dropboxのアイコンは通知プラグインではなく通知パネルにあるようです」kk78の回避策が示すように、あなたは正しい軌道に乗っていたと思います。
フアンM.ゴンザレス

1
インディケータープラグインを削除することは私にとって重要でした-単に実行dropbox startするだけDBUS_SESSION_BUS_ADDRESS=""では、インディケータープラグインからドロップボックスを取り出すには不十分でした。
BSchlinker

@BSchlinkerを使用して起動しようとする前に、Dropboxが既に実行されていた可能性がありDBUS_SESSION_BUS_ADDRESS=""ます。
jarno

2

これで修正されます。

Dropboxメニューで、[設定]に移動します。「システム起動時にDropboxを起動」の選択を解除します

[セッションと起動]> [アプリケーションの自動起動]に移動し、次の起動項目を追加します。

bash -c 'export DBUS_SESSION_BUS_ADDRESS="" && dropbox start -i'

シンプル:env DBUS_SESSION_BUS_ADDRESS="" dropbox start -i
ブルージェイ

1
@blujayまたはDBUS_SESSION_BUS_ADDRESS= dropbox start -i。しかし、一部の人々dbus-launch dropbox start -iはより良い作品を報告しています。
ジャルノ

@jarno誰もがBashスタイルのシェルを使用するわけではありません。たとえば、対話型シェルとしてFishを使用していますが、変数はname=value構文で設定されていないため、を使用する必要がありますenv。使用envどこでも作品を。
ブルージェイ

0

(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

0

これはそれ自体の答えではありませんが、十分に大きなコミュニティであることを考えると、 こちらがDropboxメールカスタマーサポートページへの直接リンクです。私たち全員がこれについて尋ねると、多分彼らはそれを自分で修正するでしょう。


0

私のDropboxはスタートアップアプリケーションであるためStartup Application、Dashを検索してからDropoboxエントリで編集を押して置き換えます

古い

dropbox start -i

新着

env XDG_CURRENT_DESKTOP = Unity dropbox start -i

問題を解決するには:alt-F2を押してからrを入力してEnterキーを押します

これはUbuntu 18.10以降で機能します

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.