CLIでAmazon Drive / Photosに画像ファイルをアップロードする odrive版

以前書いた、acd_cliというCLI(GUIなしコマンド)でのAmazon Drive操作を可能にする素晴らしいツールが突然使えなくなってしまい、詳しい原因を調べもせずに諦めていました。

Amazon Cloud Driveをコマンド操作するには
大量の写真データバックアップ用ストレージとして、ACD(Amazon Cloud Drive)が最強です。 ACDに写真をアップするの...

今現在も使えないことに変わりないのですが、Prime会員特典であるPhoto無制限アップロードを使わない手はないので、自力でAmazon Drive APIを駆使して同期するツールを作ろうかと思ったら、リンク先にある通り新規利用申請を受け付けていないとのこと。まじか。

今更ながらacd_cliが使えなくなった原因を調べてみると、以下の記事を発見しました。

amazon banned acd_cli and similiar clients (again) from DataHoarder

最初の一文が原因ですね。要約すると、他人のAPI keyを共有して使いまわしていたために利用規約違反でBANされたと。

acd-cli was never unbanned, they simply used another Developers API key (with permission I believe from the developer but not Amazon) this developer sharing the API key with acd-cli was likely a Terms of Service violation

それならacd_cliに代わるアプリケーションを探してみましょう。

rclone

上記の記事でも挙がっていたrcloneですが、noteに書いてある通りAmazon Drive API新規利用不可のためKeyが取得できず、使えませんね。あっけなく脱落。

Important: rclone supports Amazon Drive only if you have your own set of API keys. Unfortunately the Amazon Drive developer program is now closed to new entries so if you don’t already have your own set of keys you will not be able to use rclone with Amazon Drive.

For the history on why rclone no longer has a set of Amazon Drive API keys see the forum.

If you happen to know anyone who works at Amazon then please ask them to re-instate rclone into the Amazon Drive developer program – thanks!

odrive

Amazon Driveをキーワードに指定してググっていると、odriveというサービスを発見しました。Amazon Drive含む各種クラウドストレージサービスを統合して、ファイルの同期や共有を可能にするとのこと。クラアントアプリケーションはWindows版はもちろん、macOS/Linux版も提供されてる。これは期待できるのでは?GUI版しかないと困るのだけれど。

早速ユーザ登録してサインインしてみると、ダッシュボードの下の方にLinux Agentの文字が!(ただしBeta)

試してみた結果、これは良さそうです。以下に具体的な使い方を書きます。

DOWNLOAD CLI SYNC CLIENT

主要なプラットフォーム向けのCLIバイナリが用意されています。フロントはPythonですね。

Linux 64bit版のインストールとAgentの起動

Usage Guideの通り、以下のコマンドを実行すればインストール完了です。

Usage Guideはnohupで簡易的にデーモン化してますが、start-stop-daemon使ったり、systemdの設定をした方が個人的には好み。あとで何とかしようと思います。

odrive CLIヘルプ

主要機能は押さえてある感じがします。

Amazon Drive / Photoのファイル操作

早速、Amazon Driveにコマンドでファイル操作を試していきます。

authenticate(認証)

Usage Guideに記載されている通りに、まずは認証コードをCLIツールに登録します。

Once you have signed-in, navigate to your Authentication Codes and click on “Create Auth Key” to create an auth key that you can then use to authenticate your odrive Sync Agent install.

認証に成功すると、初期状態では下記ファイル構成だったのが

下記のようにそれっぽいdbが生成されます。

mount

Amazon Driveをマウントしてみましょう。

あっさりできた。

backup(アップロード)

いよいよAmazon Driveへのファイルアップロード。これにはbackupサブコマンドを使います。

できた。

sync(ダウンロード)

こちらはsyncサブコマンドをファイルごとに実行する必要があり、めんどくさいんですが問題なくできました。

まとめ

odriveで問題なし。Amazon Driveにコマンドでファイルをバックアップする程度の用途なら、odriveのFreeプランで問題ないと思います。Premiumに付いてくる付加機能は個人的には不要なので。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする