Page History

For-Linux-OS

Leonardus Kristaris Sastra edited this page on 17 Feb 2020

Clone this wiki locally

Installation

On RHEL/CentOS Distro, run this command :

$ sudo yum install rclone -y

On Debian/Ubuntu Distro, run this command :

$ sudo apt install rclone -y

Configuration

Before rclone can managing content of Google Drive server, configuration needs to be done first, Here is an example of making an s3 configuration. First run :

$ rclone config

This will guide you through an interactive setup process :

No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> your-gdrive

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 Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
   \ "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 / Koofr
   \ "koofr"
16 / Local Disk
   \ "local"
17 / Mega
   \ "mega"
18 / Microsoft Azure Blob Storage
   \ "azureblob"
19 / Microsoft OneDrive
   \ "onedrive"
20 / OpenDrive
   \ "opendrive"
21 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ "swift"
22 / Pcloud
   \ "pcloud"
23 / QingCloud Object Storage
   \ "qingstor"
24 / SSH/SFTP Connection
   \ "sftp"
25 / Webdav
   \ "webdav"
26 / Yandex Disk
   \ "yandex"
27 / http Connection
   \ "http"
Storage> drive
** See help for drive backend at: https://rclone.org/drive/ **

Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a string value. Press Enter for the default ("").
client_id>

Google Application Client Secret
Setting your own is recommended.
Enter a string value. Press Enter for the default ("").
client_secret>

Scope that rclone should use when requesting access from drive.
Enter a string value. Press Enter for the default ("").
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

ID of the root folder
Leave blank normally.
Fill in to access "Computers" folders. (see docs).
Enter a string value. Press Enter for the default ("").
root_folder_id>

Service Account Credentials JSON file path
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Enter a string value. Press Enter for the default ("").
service_account_file>

Edit advanced config? (y/n)
y) Yes
n) No
y/n> n

Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine
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...
Got code

Configure this as a team drive?
y) Yes
n) No
y/n> n
--------------------
[your-gdrive]
type = drive
token = {"access_token":"ya29.Il-9B7AtGYE-e7zpz7hQzxEALhBH-exNL0ySD1SdjrHmSo5Qno_QHTeg9686PujY9I0Q7owlL9CZq5a2ngxn0-0usL6To-0y1oPCuUB3QzwF8P6Oi1i9trKY_bNyw4LlVw","token_type":"Bearer","refresh_token":"1//0gWSr356LNRi2CgYIARAAGBASNwF-L9IrBS1NXHAQgWJX1yStn0siKZvVaxi-n82Z9A8ISw4cPdLaxzCDLYa6I-OaXROyRDA0AXA","expiry":"2020-02-17T21:07:25.70010407+07:00"}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y

Current remotes:
Name                 Type
====                 ====
your-gdrive           drive

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>

Troubleshooting

At the last step, you will be asked to authenticate to google drive using google email by accessing the link http://127.0.0.1.53682/auth .

But the problem that occurs is if the rclone configuration is running on a virtual server / VPS which we cannot access to the local virtual server / VPS environment.

The trick is to do SSH tunneling to Virtual Server / VPS instead of the port forwarding function.

Please follow the steps below:

$ ssh [user]@[IP] -L 53682:localhost:53682

-L 53682:localhost:53682 can be interpreted as we do port forwarding on port 53682 on Virtual Servers aimed at port 53682 in our local environment.

Then try access the link http://127.0.0.1.53682/auth .

If successful it will be as follows :

Google Drive

Google Drive

Once you have made a remote configuration, lets check your connection with this command :

$ rclone lsd your-gdrive:

Note

The path to the rclone configuration file can be found on ~/.config/rclone/rclone.conf

Refer on https://rclone.org/s3/