DropboxのデータをGoogleドライブへ同期する〜NASのrsyncの利用〜

落とし穴がありそうで、なかなか手をつけられない問題

今回は、以前に後回しにしたテーマでして、SynologyNASを利用してDropboxのデータをGoogleドライブへ同期する方法についての解説になります。

簡単な気がしますが、意外にややこしい、奥が深いのが以下のような話。

それが、Macの中のDropboxにあるAフォルダと同じ内容をGoogleドライブにあるBフォルダへ作ることです。いえ。データをコピー&ペーストするだけなら簡単なことですが、大量にあるいは自動的にコピーさせようとすると、さてはデータを移動させてから解約を考えてるんじゃないか、勝手にさせないぞ、と囲い込みが働き、難しくなります。それもそのはず、クラウドストレージを二つも三つも好きで持っている人などおりません。一つで済むのに越したことは無いのです。何度も書いてきているように、Dropbox、Googleドライブそれぞれ欠点があるからやむを得ず、両方持っているわけで、状況次第でいつ解約されてもおかしくないサービスです。

Dropbox内に作ったフォルダのエイリアスをGoogleドライブのフォルダに持ってくるようにすると、デバイスから削除するだの、利用できなくなるだの、Dropbox外に移動するだの、恐ろしい警告が表示されます。

の何が起こるのかよくわかりませんが、やってはいけないことをやろうとしているのだろう、そう釘を刺されていると感じます。さすがビジネスに強いDropbox、トラブル時の責任範囲を明確にするということでしょう。この場は、キャンセルしました。しかし私は過去、こうした時に、先に進んでしまい、Dropbox全体ごとダウンロードをやり直した、そんな経験もあったような気がします。

有料なら、サービスはあります

クラウドストレージ間のデータ移動や同期ですが、MultiCloudという別のクラウドサービスを使うと実現できます。しかし、無料で使えるのは、月間5GBのデータトラフィックまでです。これは少な過ぎ!有料になると年間1200GBのトラフィックまでで約7,000円年となっていますが、容量ではなくてデータトラフィックと言われても実感が沸かないわけです。私の場合すでに有料会員としてDropboxは2TB、Googleドライブは0.2TBを利用していますので、またNASも持っていますので、クラウドストレージは、今のところ増やしたくありません。

まわりくどいが確実な方法を選んでみる

Mac内で、クラウドストレージ間でフォルダをコピーしたり同期しようとすると、何かと意地悪をされそうなので、迂回させることにします。SynologyNAS内で同期させます。1〜2分かかりますが、確実な方法がいいです。

 MacのDropboxフォルダを変更するとDropboxクラウドが更新される(双方向同期)。

 SynologyNASのDropboxフォルダを更新する(CloudSyncによる。双方向同期)。

 SynologyNASのDropboxフォルダからSynologyNASのGoogleドライブフォルダを更新する(rsyncによる。一方向同期)

 Googleドライブクラウドが更新される(CloudSyncによる。双方向同期)。

 MacのGoogleドライブフォルダが更新される(双方向同期)。

の存在を知らない人には、何が起こっているか分からない。

今回私は、確実にデータを移動させかつ便利に使うための仕組みを作っているわけです。しかし、「確実」「便利」という言葉の背後には、「確実、便利に悪巧みをする方法」ということもあり得るわけですね。そもそもは自由自在にデザインできるわけです。例えば、「元データの中に金額があったら20%水増しして新たに書き出せ」とか、AIに解読させて、どちらかに有利に変えさせるとか、様々な悪巧みができるわけですね。見方を変えれば、「データ転がし」ですから。データ隠し、マネーロンダリング、不正改ざん、など。ここで重要なのは、そうした危険性があるということを知っておくことでしょう。

ポイント解説

1 rsyncの設定手順

シェルスクリプトファイルの作成と格納

dropbox_google_sync.sh

#!/bin/bash
rsync -av --delete /volume1/dropbox_1/sync_to_google/ /volume1/google_drive_1/sync_from_dropbox/ 


SynologyNASにはrsyncは最初から入っているので、シェルスクリプトのファイル.shを、Macのテキストエディットなどで作成(例えばdropbox_google_sync.sh)→SynologyNASの共有フォルダに例えばbinフォルダを作る→binフォルダの中にdropbox_google_sync.shを入れる。

タスクスケジューラの設定

SynologyNASのコントロールパネル→タスクスケジューラー
「全般」「スケジュール」「タスク設定」を以下のように設定します。

ここでは、毎分更新にしています。

2 Macから共有リンクが取得できる

M1Mac
M1Mac
SynologyNAS

今回のように、送り出し側のフォルダ名を”sync_to_google”、受け取り側のフォルダ名を”sync_from_dropbox”とわかりやすくするのが賢明です。”send_”、”receive_”と頭につけるのもわかりやすいです。もし、Aフォルダ、Bフォルダなど無意味な名前ですと、迷子になりそうです。

関係を逆にして、送り出し側をGoogleドライブに設定して、受け取り側をDropboxに設定することも、もちろん可能です。

3 その他 まとめ

私が便利に感じているフローに、各種メディアデータの加工はDropboxで行う→Googleドライブへ送り出す→GoogleドライブでAppSheet、GASを使い加工する→Xserverなどの外部サーバーへ送り出す。という形がありますが、今回はそのフローの一部でもあります。

以上です。