Rclone Copy Google Drive ke Google Drive Lain

Posted on

Rclone Sync Process

Sebelumnya saya sudah pernah menjelaskan cara menggunakan Rclone pada artikel Rclone: Solusi Backup ke S3/Wasabi/DO. Kali ini saya ingin melakukan copy antara google drive ke google drive lain, adapun kapasitas google drive pada umumnya tiap user GMail adalah 15 GB.

Saya berpikir gimana caranya untuk copy Google Drive ke Google Drive lain tanpa melakukan Download dan Upload ulang, tanpa simpan ke komputer/server terlebih dahulu. Nah ternyata, Rclone ini menyediakan fasilitas untuk remote copy antara Google Drive ke Google Drive lain. Berikut step by stepnya:

Persiapan

Langkah pertama yang mesti dilakukan adalah membuat sebuah project dan grant API untuk google drive, agar kita dapat melakukan copy sesama google drive. Seperti ini:

1. Login ke Google API Console dengan Gmail manapun: https://console.developers.google.com/

2. Pilih sebuah Project atau Create New Project

3. Pada “ENABLE APIS AND SERVICES” ketik “Drive” dan enable pada “Google Drive API”

4. Klik “Credentials” pada menu samping kiri, bukan dari Wizard ya teman-teman. Kemudian klik “Create credentials” dan pilih “OAuth client ID”, ini memerlukan “OAuth consent screen product name” jika Anda punya maka tidak memerlukan lagi

5. Pada pilihan aplikasi, pilih saja “other” dan klik “Create” pakai default name saja tidak masalah

6. Nanti akan muncul, “client ID” dan “client secret” silakan dicopy paste ke notepad

Konfigurasi Rclone

Tahap awal sama seperti artikel sebelumnya, pastikan rclone sudah diinstall kemudian jalankan perintah:

# rclone config

Pilih new remote

n) New remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
n/r/c/s/q> n

Namanya disesuaikan, dalam hal ini gdrive1 karena kita akan setup 2 google drive.

name> gdrive1

Storagenya pilih “drive” untuk Google Drive

Storage> drive

Masukan client id dan client secret yang sudah kita buat sebelumnya

Google Application Client Id - leave blank normally.
client_id>
Google Application Client Secret - leave blank normally.
client_secret>

Pilih nomor 1 untuk scope agar dapat full access

Scope that rclone should use when requesting access from drive.
Choose a number from below, or type in your own value
 1 / Full access all files, excluding Application Data Folder.
   \ "drive"
 2 / Read-only access to file metadata and file contents.
   \ "drive.readonly"
   / Access to files created by rclone only.
 3 | These are visible in the drive website.
   | File authorization is revoked when the user deauthorizes the app.
   \ "drive.file"
   / Allows read and write access to the Application Data folder.
 4 | This is not visible in the drive website.
   \ "drive.appfolder"
   / Allows read-only access to file metadata but
 5 | does not allow any access to read or download file content.
   \ "drive.metadata.readonly"
scope> 1

Selanjutnya dibuat default saja seperti ini

ID of the root folder - leave blank normally.  Fill in to access "Computers" folders. (see docs).
root_folder_id> 
Service Account Credentials JSON file path - needed only if you want use SA instead of interactive login.
service_account_file>

Login untuk authorization code ketika ada notice seperti ini:

Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine or Y didn't work
y) Yes
n) No
y/n> y
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...

Buka browser pada alamat http://127.0.0.1:53682/auth kemudian login ke akun Google Drive 1 sampai muncul seperti ini:

Got code
Configure this as a team drive?
y) Yes
n) No
y/n> n

Y untuk OK

--------------------
[remote]
client_id = 
client_secret = 
scope = drive
root_folder_id = 
service_account_file =
token = {"access_token":"XXX","token_type":"Bearer","refresh_token":"XXX","expiry":"2014-03-16T13:57:58.955387075Z"}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y

Hal yang sama dilakukan kembali pada Google Drive 2 dengan nama gdrive2 sampai nanti pada /root/.config/rclone/rclone.conf seperti ini:

[gdrive1]
type = drive
client_id = 
client_secret = 
scope = drive
token = {"access_token":""} [gdrive2]
type = drive
client_id = 355461763527-79j9kqulmoi5msaidqov4dfvpf59531b.apps.googleusercontent.com
client_secret = aDPRjoc8sXsc0RspOjM1O2gc
scope = drive
token = {"access_token":""}

Rclone Copy

Setelah konfigurasi selesai, untuk melakukan copy sangatlah mudah cukup dengan perintah seperti ini:

Copy All Google Drive

rclone copy -vv --disable copy gdrive1: gdrive2:

Copy Folder to Folder

rclone copy -vv --disable copy gdrive1:folderku gdrive2:folderku

Silakan tunggu hingga proses selesai. Gimana gampang bukan? oiya sebagai informasi, untuk copy file ini dibatasi 750GB/day jadi jika sudah melebihi akan tidak bisa copy kembali dan mesti nunggu dihari selanjutnya.

Semoga bermanfaat~~

Gravatar Image
Seorang warga negara Indonesia biasa. Pengguna MAC dan develop server Ubuntu & CentOS. Contact : admin [at] nugi.biz

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.