前言#
Rclone は、異なるオブジェクトストレージやクラウドストレージ間でのデータの同期、アップロード、ダウンロードをサポートするコマンドラインツールです。さらに、いくつかの設定を通じてオフラインダウンロードやサーバーバックアップなど、非常に便利な機能を実現することができます。ここでは、OneDrive と Google Drive を例にして接続の設定を行いますが、他のクラウドストレージの操作も同様です。インタラクティブな設定オプションであるため、基本的には理解できれば難しいことはありません。
Rclone のインストール#
公式では、ワンライナーのインストールスクリプトを提供しています:
curl https://rclone.org/install.sh | sudo bash
OneDrive への接続#
トークンの取得#
ローカルの Windows コンピュータでrclone をダウンロードし、解凍してください。解凍後、フォルダに移動し、エクスプローラーのアドレスバーにcmd
と入力し、Enter キーを押すと、現在のパスでコマンドプロンプトが開きます。以下のコマンドを入力してください:
rclone authorize "onedrive"
次に、ブラウザが開き、アカウントにログインして認証を求められます。認証が完了すると、コマンドプロンプトウィンドウに以下の情報が表示されます:
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
Paste the following into your remote machine --->
{"access_token":"xxxxxxxx"} # 注意!{xxxxxxxx}全体をコピーして保存し、後で使用します
<---End paste
Rclone の設定#
rclone config
コマンドを入力すると、以下の情報が表示されます。以下のコメントに従って操作してください。
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n # nを選択して新規作成
name> P3TERX # 名前を入力します。ラベルのようなもので、異なるクラウドストレージを区別するために使用します。
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / A stackable unification remote, which can appear to merge the contents of several remotes
\ "union"
2 / Alias for a existing remote
\ "alias"
3 / Amazon Drive
\ "amazon cloud drive"
4 / Amazon S3 Compliant Storage Providers (AWS, Ceph, Dreamhost, IBM COS, Minio)
\ "s3"
5 / Backblaze B2
\ "b2"
6 / Box
\ "box"
7 / Cache a remote
\ "cache"
8 / Dropbox
\ "dropbox"
9 / Encrypt/Decrypt a remote
\ "crypt"
10 / FTP Connection
\ "ftp"
11 / Google Cloud Storage (this is not Google Drive)
\ "google cloud storage"
12 / Google Drive
\ "drive"
13 / Hubic
\ "hubic"
14 / JottaCloud
\ "jottacloud"
15 / Local Disk
\ "local"
16 / Mega
\ "mega"
17 / Microsoft Azure Blob Storage
\ "azureblob"
18 / Microsoft OneDrive
\ "onedrive"
19 / OpenDrive
\ "opendrive"
20 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
\ "swift"
21 / Pcloud
\ "pcloud"
22 / QingCloud Object Storage
\ "qingstor"
23 / SSH/SFTP Connection
\ "sftp"
24 / Webdav
\ "webdav"
25 / Yandex Disk
\ "yandex"
26 / http Connection
\ "http"
Storage> 18 # 18を選択して、Microsoft OneDriveを選択します
** See help for onedrive backend at: https://rclone.org/onedrive/ **
Microsoft App Client Id
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_id> # 空白のまま、Enterキーを押します
Microsoft App Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret> # 空白のまま、Enterキーを押します
Edit advanced config? (y/n)
y) Yes
n) No
y/n> n # nを選択します
Remote config
Use auto config?
* よくわからない場合はYを選択してください
* リモートまたはヘッドレスマシンで作業している場合はNを選択してください
y) Yes
n) No
y/n> n # nを選択します
これを動作させるためには、ウェブブラウザが利用可能なマシン上でrcloneを利用できる必要があります。
次の手順を実行してください:
rclone authorize "onedrive"
次に、以下の結果を貼り付けてください:
result> {"XXXXXXXX"} # 保存したトークンをここに貼り付けます
2018/10/31 19:54:06 ERROR : Failed to save new token in config file: section 'P3TERX' not found
Choose a number from below, or type in an existing value
1 / OneDrive Personal or Business
\ "onedrive"
2 / Root Sharepoint site
\ "sharepoint"
3 / Type in driveID
\ "driveid"
4 / Type in SiteID
\ "siteid"
5 / Search a Sharepoint site
\ "search"
Your choice> 1 # ここで選択するタイプを尋ねられます。1を選択します
Found 1 drives, please select the one you want to use:
0: OneDrive (business)
Chose drive to use:> 0 # ドライブが見つかった場合、ここでは0を選択します
Found drive 'root' of type 'business', URL: https://xxxxxx-my.sharepoint.com/personal/xxxxxxx/Documents
Is that okay?
y) Yes
n) No
y/n> y # yを選択します
--------------------
[P3TERX]
type = onedrive
token = {"XXXXXXXX"}
drive_id = XXXXXXXXX
drive_type = business
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y # yを選択します
Current remotes:
Name Type
==== ====
P3TERX onedrive
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q # qを選択して終了します