Giter VIP home page Giter VIP logo

rclone's Introduction

rclone logo

Website | Documentation | Download | Contributing | Changelog | Installation | Forum

Build Status Go Report Card GoDoc Docker Pulls

Rclone

Rclone ("rsync for cloud storage") is a command-line program to sync files and directories to and from different cloud storage providers.

Storage providers

Please see the full list of all storage providers and their features

Features

  • MD5/SHA-1 hashes checked at all times for file integrity
  • Timestamps preserved on files
  • Partial syncs supported on a whole file basis
  • Copy mode to just copy new/changed files
  • Sync (one way) mode to make a directory identical
  • Check mode to check for file hash equality
  • Can sync to and from network, e.g. two different cloud accounts
  • Optional large file chunking (Chunker)
  • Optional transparent compression (Compress)
  • Optional encryption (Crypt)
  • Optional FUSE mount (rclone mount)
  • Multi-threaded downloads to local disk
  • Can serve local or remote files over HTTP/WebDav/FTP/SFTP/dlna

Installation & documentation

Please see the rclone website for:

Downloads

License

This is free software under the terms of MIT the license (check the COPYING file included in this package).

rclone's People

Contributors

ajankovic avatar albertony avatar alrs avatar b4dm4n avatar breunigs avatar buengese avatar calebcase avatar calisro avatar cnly avatar darthshadow avatar dbramwell avatar dwalters avatar edwardxml avatar gary-kim avatar hensur avatar idavydov avatar ishuah avatar ivandeex avatar jsoref avatar klauspost avatar max-sum avatar mmatczuk avatar ncw avatar negative0 avatar olihey avatar remusb avatar sandeepkru avatar tbm avatar tgallant avatar yparitcher avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

rclone's Issues

Obtain Mail.ru OAuth token from browser

The backend configuration should run a browser for user if the configured password is an empty string. This will prepare the backend for future SMS authentication announced by mailru.

Rename a few backend configuration options

Rename mailru configuration flags:
username -> user, password -> pass -- for consistency with other backends (Mega, WebDAV, SFTP)
fastput_* -> speedup_* -- since official Disk-O client names the "put by hash" method as "speed up"

Something wrong with reading from source once split happens

2019/09/07 00:56:22 ERROR : Angels & Demons (2009)/Angels.and.Demons.2009.Theatrical.Cut.2160p.UHD.BluRay.REMUX.HDR.HEVC.Atmos-EPSiLON.mkv: Failed to copy: multipart upload failed to read source: file already closed

When copying from google drive to box (1GB Split) once it gets ready to do it's split it gets this error.

Fix the SyncUTFNorm integration test

Chunker internally implements Update via temporary Put, thus two files with different but UTF-normally equal names will still be treated as different files. This results in the SyncUTFNorm test failing (as described here https://github.com/ivandeex/rclone/blob/master/fstest/test_all/config.yaml#L39).

However, we may try a mechanism similar to the behaviour triggered by the optimizeFirstChunk flag (see code here https://github.com/ivandeex/rclone/blob/master/backend/chunker/chunker.go#L448) to overcome this limitation.

Improve download server selection algorithm

When dowloading a large file, the backend periodically requests new download servers from mailru dispatcher, e.g. when a chunk download fails. The current implementation in the serverList.take procedure (https://github.com/ivandeex/rclone/blob/master/backend/mailru/mailru.go#L2037) may result in sticking with an overloaded server. This issue is to improve this situation and make the the backend leave a failing server earlier. In particular, we should request a new download server whenever

  • need new server (the current chunk is done)
  • the old server lock is is expired (even if the server is till in the active list)

Speedup improvements

If rclone could signal to mailru backend that a file is temporary, the backend could skip creation of an extra copy. Cannot change this.

The "minimum size option" is an overkill. Remove it and have a hardcoded minimum of 20 to 512 bytes (a typical internet packet size).

Defaults for other parameters: speedup_max_mem (32M) and speedup_max_disk (3G) -- somewhat arbitrary defaults.

Maybe, "speedup_enable" option can be removed too. As a signal to disable speedup, users could set speedup disk limit to zero ro set speedup file pattern to empty string.

Change chunking defaults

  1. The most appropriate default chunk size is 2GB
  2. The "wdmrc" name of metadata type is vague. Should use something like "simplejson".
  3. The default minimum chunk number should be "0"
  4. We should not check for maximum chunk number by default (i.e. default max = -1), as it may cause unexpected behaviour for an average user

Automatically handle changed user password

If an operation returns error 403 (access denied) and a non-empty password is configured, then refresh token using configued password. If this does not help, return "access denied" to the upprt later.

Mac binary

I'm trying to fix 403 error with mail.ru on mac, but there are no binaries for mac in your project, only Linux and win. Can you add mac binary for rclone mail.ru?

Ensure that mkdir on mailru backend is atomic

Such programs as borgbackup and restic use mkdir as a way to atomically lock repository
They expect that if a directory already exists, mkdir should fail.
Note that mkdir -p linux command is not required to fail in this case.

Chunker error with Box remote

What is the problem you are having with rclone?

Very cool new feature! Thanks for your help with getting it working.

I get the following error when transferring a large file using the default settings with the chunker backend, with a Box remote repository:
DEBUG : projects/archive/INDIVGraphTheory.tar.gz__tmp.1564856403.001: Cancelling multipart upload: multipart upload failed to read source: EOF

What is your rclone version (output from rclone version)

rclone v1.48.mr02

  • os/arch: linux/amd64
  • go version: go1.12.6

Which OS you are using and how many bits (eg Windows 7, 64 bit)

Linux CentOS 7, 64 bit

Which cloud storage system are you using? (eg Google Drive)

Box

The command you were trying to run (eg rclone copy /tmp remote:tmp)

rclone sync / Chunker_Box_ProjectBackups_RawDataAndDocsDirs: -vv --log-file=logs/chunker_box_projectsrawdataanddocsdirs.log --filter-from FILTERFROM_projectsrawdataanddocsdirs_archiveonly.txt --copy-links --retries 1 --progress

A log from the command with the -vv flag (eg output from rclone -vv copy /tmp remote:tmp)

Attached. Note that I cancelled the process for this log since it would keep retrying but fail after the last attempt.

chunker_box_projectsrawdataanddocsdirs_2019-08-04T07:48_mod.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.