What is the problem you are having with rclone?
I’m running an rclone service on a VPS, which includes a Google Drive remote. I need to share it to multiple user, and let them upload local files to Google Drive via the VPS.
For some reasons, they cannot directly mount Google Drive locally. Additionally, the direct connection from local machine to the VPS is unstable, So they need to use a proxy to maximize upload speed. I'm using rclone serve webdav
as backend, and nginx reverse proxy for https connection.
So it should be like this Local -> Proxy -> Nginx reverse proxy -> rclone serve webdav
But I noticed that the upload speed is only fast at the beginning and then drops significantly over time. Speedtest for proxy is fine on speedtest.net
Now my question is: Is the slow speed caused by my configuration, or is it inherent to this method? Should I switch to another rclone serve
option, such as s3
, for uploading?
Run the command 'rclone version' and share the full output of the command.
rclone v1.69.1
- os/version: ubuntu 22.04 (64 bit)
- os/kernel: 6.13.5-x64v3-xanmod1 (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.24.0
- go/linking: static
- go/tags: none
Which cloud storage system are you using? (eg Google Drive)
workspace Google Drive
The command you were trying to run (eg rclone copy /tmp remote:tmp
)
/usr/bin/rclone serve webdav gdrive:/ --addr 127.0.0.1:8080 --user "user" --pass "pass" --vfs-cache-mode writes --transfers 16 --vfs-cache-max-size 15Gi --vfs-cache-max-age 1h --vfs-cache-min-free-space 3Gi
Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone.
[gdrive]
type = drive
client_id = XXX
client_secret = XXX
scope = drive
token = XXX
Nginx reverse proxy part
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_request_buffering off;
proxy_redirect off;
client_max_body_size 0;
proxy_max_temp_file_size 0;
proxy_pass http://127.0.0.1:8080;
}
A log from the command that you were trying to run with the -vv
flag
not set any log path since there is no error