コマンドラインでDropboxを操作する(Dropbox-Uploader編)


コマンドラインからクラウドストレージを操作できるようになると、複数のRaspberry間でデータの同期が簡単にできるようになります。
コマンドラインでの操作なので、シェルスクリプトに組み込んで使う事もできます。
そこで、RaspberryのコマンドラインからDropboxを操作する方法として「Dropbox-Uploader」を紹介します。
「Dropbox-Uploader」は以下で紹介されています。
http://raspi.tv/2013/how-to-use-dropbox-with-raspberry-pi

セットアップ方法を紹介します。

$ git clone https://github.com/andreafabrizi/Dropbox-Uploader.git
$ cd Dropbox-Uploader/
$ chmod +x dropbox_uploader.sh
$ ./dropbox_uploader.sh

@App keyの入力待ちなる
 # App key:
A以下のページにアクセスしアップロード用のアプリを登録する
https://www.dropbox.com/developers/apps
・右上の「create app」ボタンを押す
・「Dropbox API app」を選ぶ
・「Can you app be limited to its own folder?」では「Yes」を選ぶ
・App name欄に好きな名前(何でもいい)を入れて「Create app」ボタンを押す
ここでは説明のためにApp nameを「MyRaspberry」としますが、他の人が既に使っている名前は
「This app name is already taken」のエラーとなりますので、メールアドレスなどを指定するのがいいでしょう。
B確認のためのメールが飛んでくるので確認する(最初の1回目だけ、2回目以降はなし)
CApp keyとApp secretが表示されるので、それを画面にコピー&ペーストする

 # App key: XXXXXXXXXX
 # App secret: YYYYYYYYYY
 # Permission type, App folder or Full Dropbox [a/f]: a

 > App key is XXXXXXXXXX, App secret is YYYYYYYYYY and Access level is App Folder. Looks ok? [y/n]: y

 > Token request... OK

D以下のメッセージが表示されるので指定されたURLをブラウザーで開き承認を行う。

 Please open the following URL in your browser, and allow Dropbox Uploader to access your DropBox folder:

 --> https://www.dropbox.com/1/oauth/authorize?oauth_token=XXXXXXXXXXXXXXXX

Press enter when done...

 > Access Token request... OK

 Setup completed!

クラウドにファイルをアップロードします。
$ /home/pi/Dropbox-Uploader/dropbox_uploader.sh upload /tmp/out2.jpg out2.jpg
 > Uploading "/tmp/out2.jpg" to "/out2.jpg"... DONE
Dropboxの「アプリ→MyRaspberry」フォルダーに「out2.jpg」がアップロードされます。

クラウド上にあるファイルは以下のコマンドで見ることができます。
$ /home/pi/Dropbox-Uploader/dropbox_uploader.sh list
 > Listing "//"... DONE
 [F] 62815 out2.jpg

クラウドからファイルをダウンロードします。
$ /home/pi/Dropbox-Uploader/dropbox_uploader.sh download out2.jpg /tmp/out2.jpg
 > Downloading "/out2.jpg" to "/tmp/out2.jpg"... DONE

クラウドからファイルを削除します。
$ /home/pi/Dropbox-Uploader/dropbox_uploader.sh delete out2.jpg
 > Deleting "/out2.jpg"... DONE


複数のRaspberryで同じフォルダーを共有する場合、2台目以降のRaspberryでは以下の手順でセットアップを行います。

$ git clone https://github.com/andreafabrizi/Dropbox-Uploader.git
$ cd Dropbox-Uploader/
$ chmod +x dropbox_uploader.sh
$ ./dropbox_uploader.sh

@App keyの入力待ちなる
 # App key:
A以下のページにアクセスする
https://www.dropbox.com/developers/apps
BYour appsから「MyRaspberry」を選ぶ
CApp keyとApp secret(Showを押さないと表示されない)を画面にコピー&ペーストする

 # App key: XXXXXXXXXX
 # App secret: YYYYYYYYYY
 # Permission type, App folder or Full Dropbox [a/f]: a

 > App key is XXXXXXXXXX, App secret is YYYYYYYYYY and Access level is App Folder. Looks ok? [y/n]: y

 > Token request... OK

D以下のメッセージが表示されるので指定されたURLをブラウザーで開き承認を行う。

 Please open the following URL in your browser, and allow Dropbox Uploader to access your DropBox folder:

 --> https://www.dropbox.com/1/oauth/authorize?oauth_token=XXXXXXXXXXXXXXXX

Press enter when done...

 > Access Token request... OK

 Setup completed!

これで複数のRaspberryで同じフォルダーを共有することができます。

続く...