From 29f967dba3f23a3fa7e4a696bf1d99f8890280c7 Mon Sep 17 00:00:00 2001 From: Ivan Andreev Date: Tue, 8 Jun 2021 18:57:04 +0300 Subject: [PATCH] make commanddocs for v1.56 (#5383) --- docs/content/commands/rclone_about.md | 6 +- docs/content/commands/rclone_config.md | 2 +- docs/content/commands/rclone_config_create.md | 100 ++++- docs/content/commands/rclone_config_edit.md | 6 +- .../commands/rclone_config_password.md | 4 +- docs/content/commands/rclone_config_touch.md | 27 ++ docs/content/commands/rclone_config_update.md | 102 +++++- docs/content/commands/rclone_copyurl.md | 6 +- docs/content/commands/rclone_delete.md | 6 +- docs/content/commands/rclone_link.md | 2 +- docs/content/commands/rclone_lsf.md | 2 +- docs/content/commands/rclone_mount.md | 53 ++- docs/content/commands/rclone_ncdu.md | 1 - docs/content/commands/rclone_rcat.md | 10 +- docs/content/commands/rclone_selfupdate.md | 2 +- docs/content/commands/rclone_serve_dlna.md | 6 +- docs/content/commands/rclone_serve_docker.md | 343 ++++++++++++++++++ docs/content/commands/rclone_serve_ftp.md | 6 +- docs/content/commands/rclone_serve_http.md | 35 +- docs/content/commands/rclone_serve_sftp.md | 12 +- docs/content/commands/rclone_serve_webdav.md | 6 +- docs/content/commands/rclone_test.md | 1 + .../commands/rclone_test_changenotify.md | 28 ++ .../content/commands/rclone_test_makefiles.md | 1 + docs/content/commands/rclone_version.md | 9 +- docs/content/flags.md | 79 ++-- 26 files changed, 728 insertions(+), 127 deletions(-) create mode 100644 docs/content/commands/rclone_config_touch.md create mode 100644 docs/content/commands/rclone_serve_docker.md create mode 100644 docs/content/commands/rclone_test_changenotify.md diff --git a/docs/content/commands/rclone_about.md b/docs/content/commands/rclone_about.md index a0c21bfae..1d6e3392a 100644 --- a/docs/content/commands/rclone_about.md +++ b/docs/content/commands/rclone_about.md @@ -12,10 +12,10 @@ Get quota information from the remote. ## Synopsis -`rclone about`prints quota information about a remote to standard +`rclone about` prints quota information about a remote to standard output. The output is typically used, free, quota and trash contents. -E.g. Typical output from`rclone about remote:`is: +E.g. Typical output from `rclone about remote:` is: Total: 17G Used: 7.444G @@ -43,7 +43,7 @@ Applying a `--full` flag to the command prints the bytes in full, e.g. Trashed: 104857602 Other: 8849156022 -A `--json`flag generates conveniently computer readable output, e.g. +A `--json` flag generates conveniently computer readable output, e.g. { "total": 18253611008, diff --git a/docs/content/commands/rclone_config.md b/docs/content/commands/rclone_config.md index 1a996ca83..f1d6ea602 100644 --- a/docs/content/commands/rclone_config.md +++ b/docs/content/commands/rclone_config.md @@ -35,12 +35,12 @@ See the [global flags page](/flags/) for global options not listed here. * [rclone config delete](/commands/rclone_config_delete/) - Delete an existing remote `name`. * [rclone config disconnect](/commands/rclone_config_disconnect/) - Disconnects user from remote * [rclone config dump](/commands/rclone_config_dump/) - Dump the config file as JSON. -* [rclone config edit](/commands/rclone_config_edit/) - Enter an interactive configuration session. * [rclone config file](/commands/rclone_config_file/) - Show path of configuration file in use. * [rclone config password](/commands/rclone_config_password/) - Update password in an existing remote. * [rclone config providers](/commands/rclone_config_providers/) - List in JSON format all the providers and options. * [rclone config reconnect](/commands/rclone_config_reconnect/) - Re-authenticates user with remote. * [rclone config show](/commands/rclone_config_show/) - Print (decrypted) config file, or the config for a single remote. +* [rclone config touch](/commands/rclone_config_touch/) - Ensure configuration file exists. * [rclone config update](/commands/rclone_config_update/) - Update options in an existing remote. * [rclone config userinfo](/commands/rclone_config_userinfo/) - Prints info about logged in user of remote. diff --git a/docs/content/commands/rclone_config_create.md b/docs/content/commands/rclone_config_create.md index 20812bbad..944c54681 100644 --- a/docs/content/commands/rclone_config_create.md +++ b/docs/content/commands/rclone_config_create.md @@ -13,16 +13,23 @@ Create a new remote with name, type and options. Create a new remote of `name` with `type` and options. The options -should be passed in pairs of `key` `value`. +should be passed in pairs of `key` `value` or as `key=value`. For example to make a swift remote of name myremote using auto config you would do: rclone config create myremote swift env_auth true + rclone config create myremote swift env_auth=true + +So for example if you wanted to configure a Google Drive remote but +using remote authorization you would do this: + + rclone config create mydrive drive config_is_local=false Note that if the config process would normally ask a question the -default is taken. Each time that happens rclone will print a message -saying how to affect the value taken. +default is taken (unless `--non-interactive` is used). Each time +that happens rclone will print or DEBUG a message saying how to +affect the value taken. If any of the parameters passed is a password field, then rclone will automatically obscure them if they aren't already obscured before @@ -32,15 +39,79 @@ putting them in the config file. consists only of base64 characters then rclone can get confused about whether the password is already obscured or not and put unobscured passwords into the config file. If you want to be 100% certain that -the passwords get obscured then use the "--obscure" flag, or if you +the passwords get obscured then use the `--obscure` flag, or if you are 100% certain you are already passing obscured passwords then use -"--no-obscure". You can also set obscured passwords using the -"rclone config password" command. +`--no-obscure`. You can also set obscured passwords using the +`rclone config password` command. -So for example if you wanted to configure a Google Drive remote but -using remote authorization you would do this: +The flag `--non-interactive` is for use by applications that wish to +configure rclone themeselves, rather than using rclone's text based +configuration questions. If this flag is set, and rclone needs to ask +the user a question, a JSON blob will be returned with the question in +it. - rclone config create mydrive drive config_is_local false +This will look something like (some irrelevant detail removed): + +``` +{ + "State": "*oauth-islocal,teamdrive,,", + "Option": { + "Name": "config_is_local", + "Help": "Use auto config?\n * Say Y if not sure\n * Say N if you are working on a remote or headless machine\n", + "Default": true, + "Examples": [ + { + "Value": "true", + "Help": "Yes" + }, + { + "Value": "false", + "Help": "No" + } + ], + "Required": false, + "IsPassword": false, + "Type": "bool", + "Exclusive": true, + }, + "Error": "", +} +``` + +The format of `Option` is the same as returned by `rclone config +providers`. The question should be asked to the user and returned to +rclone as the `--result` option along with the `--state` parameter. + +The keys of `Option` are used as follows: + +- `Name` - name of variable - show to user +- `Help` - help text. Hard wrapped at 80 chars. Any URLs should be clicky. +- `Default` - default value - return this if the user just wants the default. +- `Examples` - the user should be able to choose one of these +- `Required` - the value should be non-empty +- `IsPassword` - the value is a password and should be edited as such +- `Type` - type of value, eg `bool`, `string`, `int` and others +- `Exclusive` - if set no free-form entry allowed only the `Examples` +- Irrelevant keys `Provider`, `ShortOpt`, `Hide`, `NoPrefix`, `Advanced` + +If `Error` is set then it should be shown to the user at the same +time as the question. + + rclone config update name --continue --state "*oauth-islocal,teamdrive,," --result "true" + +Note that when using `--continue` all passwords should be passed in +the clear (not obscured). Any default config values should be passed +in with each invocation of `--continue`. + +At the end of the non interactive process, rclone will return a result +with `State` as empty string. + +If `--all` is passed then rclone will ask all the config questions, +not just the post config questions. Any parameters are used as +defaults for questions as usual. + +Note that `bin/config.py` in the rclone source implements this protocol +as a readable demonstration. ``` @@ -50,9 +121,14 @@ rclone config create `name` `type` [`key` `value`]* [flags] ## Options ``` - -h, --help help for create - --no-obscure Force any passwords not to be obscured. - --obscure Force any passwords to be obscured. + --all Ask the full set of config questions. + --continue Continue the configuration process with an answer. + -h, --help help for create + --no-obscure Force any passwords not to be obscured. + --non-interactive Don't interact with user and return questions. + --obscure Force any passwords to be obscured. + --result string Result - use with --continue. + --state string State - use with --continue. ``` See the [global flags page](/flags/) for global options not listed here. diff --git a/docs/content/commands/rclone_config_edit.md b/docs/content/commands/rclone_config_edit.md index 984747ad8..dade7e042 100644 --- a/docs/content/commands/rclone_config_edit.md +++ b/docs/content/commands/rclone_config_edit.md @@ -9,7 +9,7 @@ url: /commands/rclone_config_edit/ Enter an interactive configuration session. -## Synopsis +# Synopsis Enter an interactive configuration session where you can setup new remotes and manage existing ones. You may also set or remove a @@ -20,7 +20,7 @@ password to protect your configuration. rclone config edit [flags] ``` -## Options +# Options ``` -h, --help help for edit @@ -28,7 +28,7 @@ rclone config edit [flags] See the [global flags page](/flags/) for global options not listed here. -## SEE ALSO +# SEE ALSO * [rclone config](/commands/rclone_config/) - Enter an interactive configuration session. diff --git a/docs/content/commands/rclone_config_password.md b/docs/content/commands/rclone_config_password.md index 1487cbf80..b6ba9782e 100644 --- a/docs/content/commands/rclone_config_password.md +++ b/docs/content/commands/rclone_config_password.md @@ -13,11 +13,13 @@ Update password in an existing remote. Update an existing remote's password. The password -should be passed in pairs of `key` `value`. +should be passed in pairs of `key` `password` or as `key=password`. +The `password` should be passed in in clear (unobscured). For example to set password of a remote of name myremote you would do: rclone config password myremote fieldname mypassword + rclone config password myremote fieldname=mypassword This command is obsolete now that "config update" and "config create" both support obscuring passwords directly. diff --git a/docs/content/commands/rclone_config_touch.md b/docs/content/commands/rclone_config_touch.md new file mode 100644 index 000000000..ebea6e257 --- /dev/null +++ b/docs/content/commands/rclone_config_touch.md @@ -0,0 +1,27 @@ +--- +title: "rclone config touch" +description: "Ensure configuration file exists." +slug: rclone_config_touch +url: /commands/rclone_config_touch/ +# autogenerated - DO NOT EDIT, instead edit the source code in cmd/config/touch/ and as part of making a release run "make commanddocs" +--- +# rclone config touch + +Ensure configuration file exists. + +``` +rclone config touch [flags] +``` + +## Options + +``` + -h, --help help for touch +``` + +See the [global flags page](/flags/) for global options not listed here. + +## SEE ALSO + +* [rclone config](/commands/rclone_config/) - Enter an interactive configuration session. + diff --git a/docs/content/commands/rclone_config_update.md b/docs/content/commands/rclone_config_update.md index 2a01cbed4..b84d3fe6e 100644 --- a/docs/content/commands/rclone_config_update.md +++ b/docs/content/commands/rclone_config_update.md @@ -13,12 +13,23 @@ Update options in an existing remote. Update an existing remote's options. The options should be passed in -in pairs of `key` `value`. +pairs of `key` `value` or as `key=value`. For example to update the env_auth field of a remote of name myremote you would do: - rclone config update myremote swift env_auth true + rclone config update myremote env_auth true + rclone config update myremote env_auth=true + +If the remote uses OAuth the token will be updated, if you don't +require this add an extra parameter thus: + + rclone config update myremote swift env_auth=true config_refresh_token=false + +Note that if the config process would normally ask a question the +default is taken (unless `--non-interactive` is used). Each time +that happens rclone will print or DEBUG a message saying how to +affect the value taken. If any of the parameters passed is a password field, then rclone will automatically obscure them if they aren't already obscured before @@ -28,15 +39,79 @@ putting them in the config file. consists only of base64 characters then rclone can get confused about whether the password is already obscured or not and put unobscured passwords into the config file. If you want to be 100% certain that -the passwords get obscured then use the "--obscure" flag, or if you +the passwords get obscured then use the `--obscure` flag, or if you are 100% certain you are already passing obscured passwords then use -"--no-obscure". You can also set obscured passwords using the -"rclone config password" command. +`--no-obscure`. You can also set obscured passwords using the +`rclone config password` command. -If the remote uses OAuth the token will be updated, if you don't -require this add an extra parameter thus: +The flag `--non-interactive` is for use by applications that wish to +configure rclone themeselves, rather than using rclone's text based +configuration questions. If this flag is set, and rclone needs to ask +the user a question, a JSON blob will be returned with the question in +it. - rclone config update myremote swift env_auth true config_refresh_token false +This will look something like (some irrelevant detail removed): + +``` +{ + "State": "*oauth-islocal,teamdrive,,", + "Option": { + "Name": "config_is_local", + "Help": "Use auto config?\n * Say Y if not sure\n * Say N if you are working on a remote or headless machine\n", + "Default": true, + "Examples": [ + { + "Value": "true", + "Help": "Yes" + }, + { + "Value": "false", + "Help": "No" + } + ], + "Required": false, + "IsPassword": false, + "Type": "bool", + "Exclusive": true, + }, + "Error": "", +} +``` + +The format of `Option` is the same as returned by `rclone config +providers`. The question should be asked to the user and returned to +rclone as the `--result` option along with the `--state` parameter. + +The keys of `Option` are used as follows: + +- `Name` - name of variable - show to user +- `Help` - help text. Hard wrapped at 80 chars. Any URLs should be clicky. +- `Default` - default value - return this if the user just wants the default. +- `Examples` - the user should be able to choose one of these +- `Required` - the value should be non-empty +- `IsPassword` - the value is a password and should be edited as such +- `Type` - type of value, eg `bool`, `string`, `int` and others +- `Exclusive` - if set no free-form entry allowed only the `Examples` +- Irrelevant keys `Provider`, `ShortOpt`, `Hide`, `NoPrefix`, `Advanced` + +If `Error` is set then it should be shown to the user at the same +time as the question. + + rclone config update name --continue --state "*oauth-islocal,teamdrive,," --result "true" + +Note that when using `--continue` all passwords should be passed in +the clear (not obscured). Any default config values should be passed +in with each invocation of `--continue`. + +At the end of the non interactive process, rclone will return a result +with `State` as empty string. + +If `--all` is passed then rclone will ask all the config questions, +not just the post config questions. Any parameters are used as +defaults for questions as usual. + +Note that `bin/config.py` in the rclone source implements this protocol +as a readable demonstration. ``` @@ -46,9 +121,14 @@ rclone config update `name` [`key` `value`]+ [flags] ## Options ``` - -h, --help help for update - --no-obscure Force any passwords not to be obscured. - --obscure Force any passwords to be obscured. + --all Ask the full set of config questions. + --continue Continue the configuration process with an answer. + -h, --help help for update + --no-obscure Force any passwords not to be obscured. + --non-interactive Don't interact with user and return questions. + --obscure Force any passwords to be obscured. + --result string Result - use with --continue. + --state string State - use with --continue. ``` See the [global flags page](/flags/) for global options not listed here. diff --git a/docs/content/commands/rclone_copyurl.md b/docs/content/commands/rclone_copyurl.md index 9d26b1958..928bec599 100644 --- a/docs/content/commands/rclone_copyurl.md +++ b/docs/content/commands/rclone_copyurl.md @@ -15,9 +15,9 @@ Copy url content to dest. Download a URL's content and copy it to the destination without saving it in temporary storage. -Setting `--auto-filename`will cause the file name to be retrieved from -the from URL (after any redirections) and used in the destination -path. With `--print-filename` in addition, the resuling file name will +Setting `--auto-filename` will cause the file name to be retrieved from +the URL (after any redirections) and used in the destination +path. With `--print-filename` in addition, the resulting file name will be printed. Setting `--no-clobber` will prevent overwriting file on the diff --git a/docs/content/commands/rclone_delete.md b/docs/content/commands/rclone_delete.md index 258f7509c..0951011f5 100644 --- a/docs/content/commands/rclone_delete.md +++ b/docs/content/commands/rclone_delete.md @@ -23,8 +23,8 @@ If you supply the `--rmdirs` flag, it will remove all empty directories along wi You can also use the separate command `rmdir` or `rmdirs` to delete empty directories only. -For example, to delete all files bigger than 100 MiByte, you may first want to check what -would be deleted (use either): +For example, to delete all files bigger than 100 MiB, you may first want to +check what would be deleted (use either): rclone --min-size 100M lsl remote:path rclone --dry-run --min-size 100M delete remote:path @@ -34,7 +34,7 @@ Then proceed with the actual delete: rclone --min-size 100M delete remote:path That reads "delete everything with a minimum size of 100 MiB", hence -delete all files bigger than 100 MiByte. +delete all files bigger than 100 MiB. **Important**: Since this can cause data loss, test first with the `--dry-run` or the `--interactive`/`-i` flag. diff --git a/docs/content/commands/rclone_link.md b/docs/content/commands/rclone_link.md index 3bed988f4..00a2d0202 100644 --- a/docs/content/commands/rclone_link.md +++ b/docs/content/commands/rclone_link.md @@ -41,7 +41,7 @@ rclone link remote:path [flags] ## Options ``` - --expire Duration The amount of time that the link will be valid (default 100y) + --expire Duration The amount of time that the link will be valid (default off) -h, --help help for link --unlink Remove existing public link to file/folder ``` diff --git a/docs/content/commands/rclone_lsf.md b/docs/content/commands/rclone_lsf.md index 07ce3e9eb..109f79a84 100644 --- a/docs/content/commands/rclone_lsf.md +++ b/docs/content/commands/rclone_lsf.md @@ -143,7 +143,7 @@ rclone lsf remote:path [flags] --dirs-only Only list directories. --files-only Only list files. -F, --format string Output format - see help for details (default "p") - --hash h Use this hash when h is used in the format MD5|SHA-1|DropboxHash (default "MD5") + --hash h Use this hash when h is used in the format MD5|SHA-1|DropboxHash (default "md5") -h, --help help for lsf -R, --recursive Recurse into the listing. -s, --separator string Separator for the items in the format. (default ";") diff --git a/docs/content/commands/rclone_mount.md b/docs/content/commands/rclone_mount.md index 7d4c36b76..b20695717 100644 --- a/docs/content/commands/rclone_mount.md +++ b/docs/content/commands/rclone_mount.md @@ -184,7 +184,7 @@ metadata about files like in UNIX. One case that may arise is that other program (incorrectly) interprets this as the file being accessible by everyone. For example an SSH client may warn about "unprotected private key file". -WinFsp 2021 (version 1.9, still in beta) introduces a new FUSE option "FileSecurity", +WinFsp 2021 (version 1.9) introduces a new FUSE option "FileSecurity", that allows the complete specification of file security descriptors using [SDDL](https://docs.microsoft.com/en-us/windows/win32/secauthz/security-descriptor-string-format). With this you can work around issues such as the mentioned "unprotected private key file" @@ -192,19 +192,38 @@ by specifying `-o FileSecurity="D:P(A;;FA;;;OW)"`, for file all access (FA) to t ### Windows caveats -Note that drives created as Administrator are not visible by other -accounts (including the account that was elevated as -Administrator). So if you start a Windows drive from an Administrative -Command Prompt and then try to access the same drive from Explorer -(which does not run as Administrator), you will not be able to see the -new drive. +Drives created as Administrator are not visible to other accounts, +not even an account that was elevated to Administrator with the +User Account Control (UAC) feature. A result of this is that if you mount +to a drive letter from a Command Prompt run as Administrator, and then try +to access the same drive from Windows Explorer (which does not run as +Administrator), you will not be able to see the mounted drive. -The easiest way around this is to start the drive from a normal -command prompt. It is also possible to start a drive from the SYSTEM -account (using [the WinFsp.Launcher -infrastructure](https://github.com/billziss-gh/winfsp/wiki/WinFsp-Service-Architecture)) -which creates drives accessible for everyone on the system or -alternatively using [the nssm service manager](https://nssm.cc/usage). +If you don't need to access the drive from applications running with +administrative privileges, the easiest way around this is to always +create the mount from a non-elevated command prompt. + +To make mapped drives available to the user account that created them +regardless if elevated or not, there is a special Windows setting called +[linked connections](https://docs.microsoft.com/en-us/troubleshoot/windows-client/networking/mapped-drives-not-available-from-elevated-command#detail-to-configure-the-enablelinkedconnections-registry-entry) +that can be enabled. + +It is also possible to make a drive mount available to everyone on the system, +by running the process creating it as the built-in SYSTEM account. +There are several ways to do this: One is to use the command-line +utility [PsExec](https://docs.microsoft.com/en-us/sysinternals/downloads/psexec), +from Microsoft's Sysinternals suite, which has option `-s` to start +processes as the SYSTEM account. Another alternative is to run the mount +command from a Windows Scheduled Task, or a Windows Service, configured +to run as the SYSTEM account. A third alternative is to use the +[WinFsp.Launcher infrastructure](https://github.com/billziss-gh/winfsp/wiki/WinFsp-Service-Architecture)). +Note that when running rclone as another user, it will not use +the configuration file from your profile unless you tell it to +with the [`--config`](https://rclone.org/docs/#config-config-file) option. +Read more in the [install documentation](https://rclone.org/install/). + +Note that mapping to a directory path, instead of a drive letter, +does not suffer from the same limitations. ## Limitations @@ -313,7 +332,7 @@ backend. Changes made through the mount will appear immediately or invalidate the cache. --dir-cache-time duration Time to cache directory entries for. (default 5m0s) - --poll-interval duration Time to wait between polling for changes. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) However, changes made directly on the cloud storage by the web interface or a different copy of rclone will only be picked up once @@ -578,7 +597,7 @@ rclone mount remote:path /path/to/mountpoint [flags] --fuse-flag stringArray Flags or arguments to be passed direct to libfuse/WinFsp. Repeat if required. --gid uint32 Override the gid field set by the filesystem. Not supported on Windows. (default 1000) -h, --help help for mount - --max-read-ahead SizeSuffix The number of bytes that can be prefetched for sequential reads. Not supported on Windows. (default 128k) + --max-read-ahead SizeSuffix The number of bytes that can be prefetched for sequential reads. Not supported on Windows. (default 128Ki) --network-mode Mount as remote network drive, instead of fixed disk drive. Supported on Windows only --no-checksum Don't compare checksums on up/download. --no-modtime Don't read/write the modification time (can speed things up). @@ -589,14 +608,14 @@ rclone mount remote:path /path/to/mountpoint [flags] --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) --read-only Mount read-only. --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) - --umask int Override the permission bits set by the filesystem. Not supported on Windows. + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) --vfs-cache-mode CacheMode Cache mode off|minimal|writes|full (default off) --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) --vfs-case-insensitive If a file name not found, find a case insensitive match. --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. - --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. diff --git a/docs/content/commands/rclone_ncdu.md b/docs/content/commands/rclone_ncdu.md index c0310974d..6cac97dac 100644 --- a/docs/content/commands/rclone_ncdu.md +++ b/docs/content/commands/rclone_ncdu.md @@ -33,7 +33,6 @@ Here are the keys - press '?' to toggle the help on and off a toggle average size in directory n,s,C,A sort by name,size,count,average size d delete file/directory - y copy current path to clipboard Y display current path ^L refresh screen ? to toggle help on and off diff --git a/docs/content/commands/rclone_rcat.md b/docs/content/commands/rclone_rcat.md index 016d59f7a..2085e2c23 100644 --- a/docs/content/commands/rclone_rcat.md +++ b/docs/content/commands/rclone_rcat.md @@ -30,6 +30,13 @@ must fit into RAM. The cutoff needs to be small enough to adhere the limits of your remote, please see there. Generally speaking, setting this cutoff too high will decrease your performance. +Use the |--size| flag to preallocate the file in advance at the remote end +and actually stream it, even if remote backend doesn't support streaming. + +|--size| should be the exact size of the input stream in bytes. If the +size of the stream is different in length to the |--size| passed in +then the transfer will likely fail. + Note that the upload can also not be retried because the data is not kept around until the upload succeeds. If you need to transfer a lot of data, you're better off caching locally and then @@ -42,7 +49,8 @@ rclone rcat remote:path [flags] ## Options ``` - -h, --help help for rcat + -h, --help help for rcat + --size int File size hint to preallocate (default -1) ``` See the [global flags page](/flags/) for global options not listed here. diff --git a/docs/content/commands/rclone_selfupdate.md b/docs/content/commands/rclone_selfupdate.md index ee8ac83f4..ca66ff06b 100644 --- a/docs/content/commands/rclone_selfupdate.md +++ b/docs/content/commands/rclone_selfupdate.md @@ -37,7 +37,7 @@ If the old version contains only dots and digits (for example `v1.54.0`) then it's a stable release so you won't need the `--beta` flag. Beta releases have an additional information similar to `v1.54.0-beta.5111.06f1c0c61`. (if you are a developer and use a locally built rclone, the version number -will end with `-DEV`, you will have to rebuild it as it obvisously can't +will end with `-DEV`, you will have to rebuild it as it obviously can't be distributed). If you previously installed rclone via a package manager, the package may diff --git a/docs/content/commands/rclone_serve_dlna.md b/docs/content/commands/rclone_serve_dlna.md index 2f5213dbe..138ee0250 100644 --- a/docs/content/commands/rclone_serve_dlna.md +++ b/docs/content/commands/rclone_serve_dlna.md @@ -55,7 +55,7 @@ backend. Changes made through the mount will appear immediately or invalidate the cache. --dir-cache-time duration Time to cache directory entries for. (default 5m0s) - --poll-interval duration Time to wait between polling for changes. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) However, changes made directly on the cloud storage by the web interface or a different copy of rclone will only be picked up once @@ -319,14 +319,14 @@ rclone serve dlna remote:path [flags] --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) --read-only Mount read-only. --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) - --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 2) + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) --vfs-cache-mode CacheMode Cache mode off|minimal|writes|full (default off) --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) --vfs-case-insensitive If a file name not found, find a case insensitive match. --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. - --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. diff --git a/docs/content/commands/rclone_serve_docker.md b/docs/content/commands/rclone_serve_docker.md new file mode 100644 index 000000000..09e2f4f08 --- /dev/null +++ b/docs/content/commands/rclone_serve_docker.md @@ -0,0 +1,343 @@ +--- +title: "rclone serve docker" +description: "Serve any remote on docker's volume plugin API." +slug: rclone_serve_docker +url: /commands/rclone_serve_docker/ +# autogenerated - DO NOT EDIT, instead edit the source code in cmd/serve/docker/ and as part of making a release run "make commanddocs" +--- +# rclone serve docker + +Serve any remote on docker's volume plugin API. + +# Synopsis + + +rclone serve docker implements docker's volume plugin API. +This allows docker to use rclone as a data storage mechanism for various cloud providers. + +# VFS - Virtual File System + +This command uses the VFS layer. This adapts the cloud storage objects +that rclone uses into something which looks much more like a disk +filing system. + +Cloud storage objects have lots of properties which aren't like disk +files - you can't extend them or write to the middle of them, so the +VFS layer has to deal with that. Because there is no one right way of +doing this there are various options explained below. + +The VFS layer also implements a directory cache - this caches info +about files and directories (but not the data) in memory. + +# VFS Directory Cache + +Using the `--dir-cache-time` flag, you can control how long a +directory should be considered up to date and not refreshed from the +backend. Changes made through the mount will appear immediately or +invalidate the cache. + + --dir-cache-time duration Time to cache directory entries for. (default 5m0s) + --poll-interval duration Time to wait between polling for changes. + +However, changes made directly on the cloud storage by the web +interface or a different copy of rclone will only be picked up once +the directory cache expires if the backend configured does not support +polling for changes. If the backend supports polling, changes will be +picked up within the polling interval. + +You can send a `SIGHUP` signal to rclone for it to flush all +directory caches, regardless of how old they are. Assuming only one +rclone instance is running, you can reset the cache like this: + + kill -SIGHUP $(pidof rclone) + +If you configure rclone with a [remote control](/rc) then you can use +rclone rc to flush the whole directory cache: + + rclone rc vfs/forget + +Or individual files or directories: + + rclone rc vfs/forget file=path/to/file dir=path/to/dir + +# VFS File Buffering + +The `--buffer-size` flag determines the amount of memory, +that will be used to buffer data in advance. + +Each open file will try to keep the specified amount of data in memory +at all times. The buffered data is bound to one open file and won't be +shared. + +This flag is a upper limit for the used memory per open file. The +buffer will only use memory for data that is downloaded but not not +yet read. If the buffer is empty, only a small amount of memory will +be used. + +The maximum memory used by rclone for buffering can be up to +`--buffer-size * open files`. + +# VFS File Caching + +These flags control the VFS file caching options. File caching is +necessary to make the VFS layer appear compatible with a normal file +system. It can be disabled at the cost of some compatibility. + +For example you'll need to enable VFS caching if you want to read and +write simultaneously to a file. See below for more details. + +Note that the VFS cache is separate from the cache backend and you may +find that you need one or the other or both. + + --cache-dir string Directory rclone will use for caching. + --vfs-cache-mode CacheMode Cache mode off|minimal|writes|full (default off) + --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) + --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) + --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) + --vfs-write-back duration Time to writeback files after last use when using cache. (default 5s) + +If run with `-vv` rclone will print the location of the file cache. The +files are stored in the user cache file area which is OS dependent but +can be controlled with `--cache-dir` or setting the appropriate +environment variable. + +The cache has 4 different modes selected by `--vfs-cache-mode`. +The higher the cache mode the more compatible rclone becomes at the +cost of using disk space. + +Note that files are written back to the remote only when they are +closed and if they haven't been accessed for --vfs-write-back +second. If rclone is quit or dies with files that haven't been +uploaded, these will be uploaded next time rclone is run with the same +flags. + +If using `--vfs-cache-max-size` note that the cache may exceed this size +for two reasons. Firstly because it is only checked every +`--vfs-cache-poll-interval`. Secondly because open files cannot be +evicted from the cache. + +You **should not** run two copies of rclone using the same VFS cache +with the same or overlapping remotes if using `--vfs-cache-mode > off`. +This can potentially cause data corruption if you do. You can work +around this by giving each rclone its own cache hierarchy with +`--cache-dir`. You don't need to worry about this if the remotes in +use don't overlap. + +## --vfs-cache-mode off + +In this mode (the default) the cache will read directly from the remote and write +directly to the remote without caching anything on disk. + +This will mean some operations are not possible + + * Files can't be opened for both read AND write + * Files opened for write can't be seeked + * Existing files opened for write must have O_TRUNC set + * Files open for read with O_TRUNC will be opened write only + * Files open for write only will behave as if O_TRUNC was supplied + * Open modes O_APPEND, O_TRUNC are ignored + * If an upload fails it can't be retried + +## --vfs-cache-mode minimal + +This is very similar to "off" except that files opened for read AND +write will be buffered to disk. This means that files opened for +write will be a lot more compatible, but uses the minimal disk space. + +These operations are not possible + + * Files opened for write only can't be seeked + * Existing files opened for write must have O_TRUNC set + * Files opened for write only will ignore O_APPEND, O_TRUNC + * If an upload fails it can't be retried + +## --vfs-cache-mode writes + +In this mode files opened for read only are still read directly from +the remote, write only and read/write files are buffered to disk +first. + +This mode should support all normal file system operations. + +If an upload fails it will be retried at exponentially increasing +intervals up to 1 minute. + +## --vfs-cache-mode full + +In this mode all reads and writes are buffered to and from disk. When +data is read from the remote this is buffered to disk as well. + +In this mode the files in the cache will be sparse files and rclone +will keep track of which bits of the files it has downloaded. + +So if an application only reads the starts of each file, then rclone +will only buffer the start of the file. These files will appear to be +their full size in the cache, but they will be sparse files with only +the data that has been downloaded present in them. + +This mode should support all normal file system operations and is +otherwise identical to --vfs-cache-mode writes. + +When reading a file rclone will read --buffer-size plus +--vfs-read-ahead bytes ahead. The --buffer-size is buffered in memory +whereas the --vfs-read-ahead is buffered on disk. + +When using this mode it is recommended that --buffer-size is not set +too big and --vfs-read-ahead is set large if required. + +**IMPORTANT** not all file systems support sparse files. In particular +FAT/exFAT do not. Rclone will perform very badly if the cache +directory is on a filesystem which doesn't support sparse files and it +will log an ERROR message if one is detected. + +# VFS Performance + +These flags may be used to enable/disable features of the VFS for +performance or other reasons. + +In particular S3 and Swift benefit hugely from the --no-modtime flag +(or use --use-server-modtime for a slightly different effect) as each +read of the modification time takes a transaction. + + --no-checksum Don't compare checksums on up/download. + --no-modtime Don't read/write the modification time (can speed things up). + --no-seek Don't allow seeking in files. + --read-only Mount read-only. + +When rclone reads files from a remote it reads them in chunks. This +means that rather than requesting the whole file rclone reads the +chunk specified. This is advantageous because some cloud providers +account for reads being all the data requested, not all the data +delivered. + +Rclone will keep doubling the chunk size requested starting at +--vfs-read-chunk-size with a maximum of --vfs-read-chunk-size-limit +unless it is set to "off" in which case there will be no limit. + + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size-limit SizeSuffix Max chunk doubling size (default "off") + +Sometimes rclone is delivered reads or writes out of order. Rather +than seeking rclone will wait a short time for the in sequence read or +write to come in. These flags only come into effect when not using an +on disk cache file. + + --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) + --vfs-write-wait duration Time to wait for in-sequence write before giving error. (default 1s) + +When using VFS write caching (--vfs-cache-mode with value writes or full), +the global flag --transfers can be set to adjust the number of parallel uploads of +modified files from cache (the related global flag --checkers have no effect on mount). + + --transfers int Number of file transfers to run in parallel. (default 4) + +# VFS Case Sensitivity + +Linux file systems are case-sensitive: two files can differ only +by case, and the exact case must be used when opening a file. + +File systems in modern Windows are case-insensitive but case-preserving: +although existing files can be opened using any case, the exact case used +to create the file is preserved and available for programs to query. +It is not allowed for two files in the same directory to differ only by case. + +Usually file systems on macOS are case-insensitive. It is possible to make macOS +file systems case-sensitive but that is not the default + +The `--vfs-case-insensitive` mount flag controls how rclone handles these +two cases. If its value is "false", rclone passes file names to the mounted +file system as-is. If the flag is "true" (or appears without a value on +command line), rclone may perform a "fixup" as explained below. + +The user may specify a file name to open/delete/rename/etc with a case +different than what is stored on mounted file system. If an argument refers +to an existing file with exactly the same name, then the case of the existing +file on the disk will be used. However, if a file name with exactly the same +name is not found but a name differing only by case exists, rclone will +transparently fixup the name. This fixup happens only when an existing file +is requested. Case sensitivity of file names created anew by rclone is +controlled by an underlying mounted file system. + +Note that case sensitivity of the operating system running rclone (the target) +may differ from case sensitivity of a file system mounted by rclone (the source). +The flag controls whether "fixup" is performed to satisfy the target. + +If the flag is not provided on the command line, then its default value depends +on the operating system where rclone runs: "true" on Windows and macOS, "false" +otherwise. If the flag is provided without a value, then it is "true". + +# Alternate report of used bytes + +Some backends, most notably S3, do not report the amount of bytes used. +If you need this information to be available when running `df` on the +filesystem, then pass the flag `--vfs-used-is-size` to rclone. +With this flag set, instead of relying on the backend to report this +information, rclone will scan the whole remote similar to `rclone size` +and compute the total used space itself. + +_WARNING._ Contrary to `rclone size`, this flag ignores filters so that the +result is accurate. However, this is very inefficient and may cost lots of API +calls resulting in extra charges. Use it as a last resort and only with caching. + + +``` +rclone serve docker [flags] +``` + +# Options + +``` + --allow-non-empty Allow mounting over a non-empty directory. Not supported on Windows. + --allow-other Allow access to other users. Not supported on Windows. + --allow-root Allow access to root user. Not supported on Windows. + --async-read Use asynchronous reads. Not supported on Windows. (default true) + --attr-timeout duration Time for which file/directory attributes are cached. (default 1s) + --base-dir string base directory for volumes (default "/var/lib/docker/plugins/rclone/volumes") + --daemon Run mount as a daemon (background mode). Not supported on Windows. + --daemon-timeout duration Time limit for rclone to respond to kernel. Not supported on Windows. + --debug-fuse Debug the FUSE internals - needs -v. + --default-permissions Makes kernel enforce access control based on the file mode. Not supported on Windows. + --dir-cache-time duration Time to cache directory entries for. (default 5m0s) + --dir-perms FileMode Directory permissions (default 0777) + --file-perms FileMode File permissions (default 0666) + --forget-state skip restoring previous state + --fuse-flag stringArray Flags or arguments to be passed direct to libfuse/WinFsp. Repeat if required. + --gid uint32 Override the gid field set by the filesystem. Not supported on Windows. (default 1000) + -h, --help help for docker + --max-read-ahead SizeSuffix The number of bytes that can be prefetched for sequential reads. Not supported on Windows. (default 128Ki) + --network-mode Mount as remote network drive, instead of fixed disk drive. Supported on Windows only + --no-checksum Don't compare checksums on up/download. + --no-modtime Don't read/write the modification time (can speed things up). + --no-seek Don't allow seeking in files. + --no-spec do not write spec file + --noappledouble Ignore Apple Double (._) and .DS_Store files. Supported on OSX only. (default true) + --noapplexattr Ignore all "com.apple.*" extended attributes. Supported on OSX only. + -o, --option stringArray Option for libfuse/WinFsp. Repeat if required. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) + --read-only Mount read-only. + --socket-addr string or absolute path (default: /run/docker/plugins/rclone.sock) + --socket-gid int GID for unix socket (default: current process GID) (default 1000) + --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) + --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) + --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) + --vfs-cache-mode CacheMode Cache mode off|minimal|writes|full (default off) + --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) + --vfs-case-insensitive If a file name not found, find a case insensitive match. + --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) + --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) + --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) + --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. + --vfs-write-back duration Time to writeback files after last use when using cache. (default 5s) + --vfs-write-wait duration Time to wait for in-sequence write before giving error. (default 1s) + --volname string Set the volume name. Supported on Windows and OSX only. + --write-back-cache Makes kernel buffer writes before sending them to rclone. Without this, writethrough caching is used. Not supported on Windows. +``` + +See the [global flags page](/flags/) for global options not listed here. + +# SEE ALSO + +* [rclone serve](/commands/rclone_serve/) - Serve a remote over a protocol. + diff --git a/docs/content/commands/rclone_serve_ftp.md b/docs/content/commands/rclone_serve_ftp.md index 14e37fc14..a011aea21 100644 --- a/docs/content/commands/rclone_serve_ftp.md +++ b/docs/content/commands/rclone_serve_ftp.md @@ -54,7 +54,7 @@ backend. Changes made through the mount will appear immediately or invalidate the cache. --dir-cache-time duration Time to cache directory entries for. (default 5m0s) - --poll-interval duration Time to wait between polling for changes. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) However, changes made directly on the cloud storage by the web interface or a different copy of rclone will only be picked up once @@ -403,7 +403,7 @@ rclone serve ftp remote:path [flags] --public-ip string Public IP address to advertise for passive connections. --read-only Mount read-only. --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) - --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 2) + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) --user string User name for authentication. (default "anonymous") --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) @@ -411,7 +411,7 @@ rclone serve ftp remote:path [flags] --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) --vfs-case-insensitive If a file name not found, find a case insensitive match. --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. - --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. diff --git a/docs/content/commands/rclone_serve_http.md b/docs/content/commands/rclone_serve_http.md index c43c095eb..ba4ac010e 100644 --- a/docs/content/commands/rclone_serve_http.md +++ b/docs/content/commands/rclone_serve_http.md @@ -26,7 +26,7 @@ control the stats printing. ## Server options Use --addr to specify which IP address and port the server should -listen on, e.g. --addr 1.2.3.4:8000 or --addr :8080 to listen to all +listen on, eg --addr 1.2.3.4:8000 or --addr :8080 to listen to all IPs. By default it only listens on localhost. You can use port :0 to let the OS choose an available port. @@ -48,6 +48,17 @@ inserts leading and trailing "/" on --baseurl, so --baseurl "rclone", --baseurl "/rclone" and --baseurl "/rclone/" are all treated identically. +### SSL/TLS + +By default this will serve over http. If you want you can serve over +https. You will need to supply the --cert and --key flags. If you +wish to do client side certificate validation then you will need to +supply --client-ca also. + +--cert should be a either a PEM encoded certificate or a concatenation +of that with the CA certificate. --key should be the PEM encoded +private key and --client-ca should be the PEM encoded client +certificate authority certificate. --template allows a user to specify a custom markup template for http and webdav serve functions. The server exports the following markup to be used within the template to server pages: @@ -92,18 +103,6 @@ The password file can be updated while rclone is running. Use --realm to set the authentication realm. -### SSL/TLS - -By default this will serve over http. If you want you can serve over -https. You will need to supply the --cert and --key flags. If you -wish to do client side certificate validation then you will need to -supply --client-ca also. - ---cert should be either a PEM encoded certificate or a concatenation -of that with the CA certificate. --key should be the PEM encoded -private key and --client-ca should be the PEM encoded client -certificate authority certificate. - ## VFS - Virtual File System This command uses the VFS layer. This adapts the cloud storage objects @@ -126,7 +125,7 @@ backend. Changes made through the mount will appear immediately or invalidate the cache. --dir-cache-time duration Time to cache directory entries for. (default 5m0s) - --poll-interval duration Time to wait between polling for changes. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) However, changes made directly on the cloud storage by the web interface or a different copy of rclone will only be picked up once @@ -376,7 +375,7 @@ rclone serve http remote:path [flags] ## Options ``` - --addr string IPaddress:Port or :Port to bind server to. (default "localhost:8080") + --addr string IPaddress:Port or :Port to bind server to. (default "127.0.0.1:8080") --baseurl string Prefix for URLs - leave blank for root. --cert string SSL PEM key (concatenation of certificate and CA certificate) --client-ca string Client certificate authority to verify clients with @@ -394,12 +393,12 @@ rclone serve http remote:path [flags] --pass string Password for authentication. --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) --read-only Mount read-only. - --realm string realm for authentication (default "rclone") + --realm string realm for authentication --server-read-timeout duration Timeout for server reading data (default 1h0m0s) --server-write-timeout duration Timeout for server writing data (default 1h0m0s) --template string User Specified Template. --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) - --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 2) + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) --user string User name for authentication. --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) @@ -407,7 +406,7 @@ rclone serve http remote:path [flags] --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) --vfs-case-insensitive If a file name not found, find a case insensitive match. --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. - --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. diff --git a/docs/content/commands/rclone_serve_sftp.md b/docs/content/commands/rclone_serve_sftp.md index 2a9332498..c49b37d7f 100644 --- a/docs/content/commands/rclone_serve_sftp.md +++ b/docs/content/commands/rclone_serve_sftp.md @@ -42,6 +42,11 @@ reachable externally then supply "--addr :2022" for example. Note that the default of "--vfs-cache-mode off" is fine for the rclone sftp backend, but it may not be with other SFTP clients. +If --stdio is specified, rclone will serve SFTP over stdio, which can +be used with sshd via ~/.ssh/authorized_keys, for example: + + restrict,command="rclone serve sftp --stdio ./photos" ssh-rsa ... + ## VFS - Virtual File System @@ -65,7 +70,7 @@ backend. Changes made through the mount will appear immediately or invalidate the cache. --dir-cache-time duration Time to cache directory entries for. (default 5m0s) - --poll-interval duration Time to wait between polling for changes. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) However, changes made directly on the cloud storage by the web interface or a different copy of rclone will only be picked up once @@ -412,8 +417,9 @@ rclone serve sftp remote:path [flags] --pass string Password for authentication. --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) --read-only Mount read-only. + --stdio Run an sftp server on run stdin/stdout --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) - --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 2) + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) --user string User name for authentication. --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) @@ -421,7 +427,7 @@ rclone serve sftp remote:path [flags] --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) --vfs-case-insensitive If a file name not found, find a case insensitive match. --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. - --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. diff --git a/docs/content/commands/rclone_serve_webdav.md b/docs/content/commands/rclone_serve_webdav.md index 2fd9a6350..3c9edc9e9 100644 --- a/docs/content/commands/rclone_serve_webdav.md +++ b/docs/content/commands/rclone_serve_webdav.md @@ -134,7 +134,7 @@ backend. Changes made through the mount will appear immediately or invalidate the cache. --dir-cache-time duration Time to cache directory entries for. (default 5m0s) - --poll-interval duration Time to wait between polling for changes. + --poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s) However, changes made directly on the cloud storage by the web interface or a different copy of rclone will only be picked up once @@ -491,7 +491,7 @@ rclone serve webdav remote:path [flags] --server-write-timeout duration Timeout for server writing data (default 1h0m0s) --template string User Specified Template. --uid uint32 Override the uid field set by the filesystem. Not supported on Windows. (default 1000) - --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 2) + --umask int Override the permission bits set by the filesystem. Not supported on Windows. (default 18) --user string User name for authentication. --vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s) --vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off) @@ -499,7 +499,7 @@ rclone serve webdav remote:path [flags] --vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s) --vfs-case-insensitive If a file name not found, find a case insensitive match. --vfs-read-ahead SizeSuffix Extra read ahead over --buffer-size when using cache-mode full. - --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M) + --vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128Mi) --vfs-read-chunk-size-limit SizeSuffix If greater than --vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. 'off' is unlimited. (default off) --vfs-read-wait duration Time to wait for in-sequence read before seeking. (default 20ms) --vfs-used-is-size rclone size Use the rclone size algorithm for Used size. diff --git a/docs/content/commands/rclone_test.md b/docs/content/commands/rclone_test.md index 3ef4b9ac2..4948668e0 100644 --- a/docs/content/commands/rclone_test.md +++ b/docs/content/commands/rclone_test.md @@ -34,6 +34,7 @@ See the [global flags page](/flags/) for global options not listed here. ## SEE ALSO * [rclone](/commands/rclone/) - Show help for rclone commands, flags and backends. +* [rclone test changenotify](/commands/rclone_test_changenotify/) - Log any change notify requests for the remote passed in. * [rclone test histogram](/commands/rclone_test_histogram/) - Makes a histogram of file name characters. * [rclone test info](/commands/rclone_test_info/) - Discovers file name or other limitations for paths. * [rclone test makefiles](/commands/rclone_test_makefiles/) - Make a random file hierarchy in diff --git a/docs/content/commands/rclone_test_changenotify.md b/docs/content/commands/rclone_test_changenotify.md new file mode 100644 index 000000000..04bf8b098 --- /dev/null +++ b/docs/content/commands/rclone_test_changenotify.md @@ -0,0 +1,28 @@ +--- +title: "rclone test changenotify" +description: "Log any change notify requests for the remote passed in." +slug: rclone_test_changenotify +url: /commands/rclone_test_changenotify/ +# autogenerated - DO NOT EDIT, instead edit the source code in cmd/test/changenotify/ and as part of making a release run "make commanddocs" +--- +# rclone test changenotify + +Log any change notify requests for the remote passed in. + +``` +rclone test changenotify remote: [flags] +``` + +## Options + +``` + -h, --help help for changenotify + --poll-interval duration Time to wait between polling for changes. (default 10s) +``` + +See the [global flags page](/flags/) for global options not listed here. + +## SEE ALSO + +* [rclone test](/commands/rclone_test/) - Run a test command + diff --git a/docs/content/commands/rclone_test_makefiles.md b/docs/content/commands/rclone_test_makefiles.md index 87b0fa9b6..40a2a3dc2 100644 --- a/docs/content/commands/rclone_test_makefiles.md +++ b/docs/content/commands/rclone_test_makefiles.md @@ -23,6 +23,7 @@ rclone test makefiles [flags] --max-name-length int Maximum size of file names (default 12) --min-file-size SizeSuffix Minimum size of file to create --min-name-length int Minimum size of file names (default 4) + --seed int Seed for the random number generator (0 for random) (default 1) ``` See the [global flags page](/flags/) for global options not listed here. diff --git a/docs/content/commands/rclone_version.md b/docs/content/commands/rclone_version.md index 6e7774024..1aa613421 100644 --- a/docs/content/commands/rclone_version.md +++ b/docs/content/commands/rclone_version.md @@ -12,13 +12,16 @@ Show the version number. ## Synopsis -Show the rclone version number, the go version, the build target OS and -architecture, build tags and the type of executable (static or dynamic). +Show the rclone version number, the go version, the build target +OS and architecture, the runtime OS and kernel version and bitness, +build tags and the type of executable (static or dynamic). For example: $ rclone version - rclone v1.54 + rclone v1.55.0 + - os/version: ubuntu 18.04 (64 bit) + - os/kernel: 4.15.0-136-generic (x86_64) - os/type: linux - os/arch: amd64 - go/version: go1.16 diff --git a/docs/content/flags.md b/docs/content/flags.md index 0402d987b..d474b20c7 100644 --- a/docs/content/flags.md +++ b/docs/content/flags.md @@ -17,7 +17,7 @@ These flags are available for every command. --auto-confirm If enabled, do not request console confirmation. --backup-dir string Make backups into hierarchy based in DIR. --bind string Local address to bind to for outgoing connections, IPv4, IPv6 or name. - --buffer-size SizeSuffix In memory buffer size when reading files for each --transfer. (default 16M) + --buffer-size SizeSuffix In memory buffer size when reading files for each --transfer. (default 16Mi) --bwlimit BwTimetable Bandwidth limit in KiByte/s, or use suffix B|K|M|G|T|P or a full timetable. --bwlimit-file BwTimetable Bandwidth limit per file in KiByte/s, or use suffix B|K|M|G|T|P or a full timetable. --ca-cert string CA certificate used to verify servers @@ -38,6 +38,7 @@ These flags are available for every command. --delete-during When synchronizing, delete files during transfer --delete-excluded Delete files on dest excluded from sync --disable string Disable a comma separated list of features. Use --disable help to see a list. + --disable-http2 Disable HTTP/2 in the global transport. -n, --dry-run Do a trial run with no permanent changes --dscp string Set DSCP value to connections. Can be value or names, eg. CS1, LE, DF, AF21. --dump DumpFlags List of items to dump from: headers,bodies,requests,responses,auth,filters,goroutines,openfiles @@ -86,7 +87,7 @@ These flags are available for every command. --min-age Duration Only transfer files older than this in s or suffix ms|s|m|h|d|w|M|y (default off) --min-size SizeSuffix Only transfer files bigger than this in KiB or suffix B|K|M|G|T|P (default off) --modify-window duration Max time diff to be considered the same (default 1ns) - --multi-thread-cutoff SizeSuffix Use multi-thread downloads for files above this size. (default 250M) + --multi-thread-cutoff SizeSuffix Use multi-thread downloads for files above this size. (default 250Mi) --multi-thread-streams int Max number of streams to use for multi-thread downloads. (default 4) --no-check-certificate Do not verify the server SSL certificate. Insecure. --no-check-dest Don't check the destination, copy regardless. @@ -136,8 +137,8 @@ These flags are available for every command. --stats-one-line Make the stats fit on one line. --stats-one-line-date Enables --stats-one-line and add current date/time prefix. --stats-one-line-date-format string Enables --stats-one-line-date and uses custom formatted date. Enclose date string in double quotes ("). See https://golang.org/pkg/time/#Time.Format - --stats-unit string Show data rate in stats as either 'bits' or 'bytes'/s (default "bytes") - --streaming-upload-cutoff SizeSuffix Cutoff for switching to chunked upload if file size is unknown. Upload starts after reaching cutoff or when file ends. (default 100k) + --stats-unit string Show data rate in stats as either 'bits' or 'bytes' per second (default "bytes") + --streaming-upload-cutoff SizeSuffix Cutoff for switching to chunked upload if file size is unknown. Upload starts after reaching cutoff or when file ends. (default 100Ki) --suffix string Suffix to add to changed files. --suffix-keep-extension Preserve the extension when using --suffix. --syslog Use Syslog for logging @@ -153,7 +154,7 @@ These flags are available for every command. --use-json-log Use json log format. --use-mmap Use mmap allocator (see docs). --use-server-modtime Use server modified time instead of object metadata - --user-agent string Set the user-agent to a specified string. The default is rclone/ version (default "rclone/v1.55.0") + --user-agent string Set the user-agent to a specified string. The default is rclone/ version (default "rclone/v1.56.0-beta.5531.41f561bf2.pr-commanddocs") -v, --verbose count Print lots more stuff (repeat for more) ``` @@ -167,7 +168,7 @@ and may be set in the config file. --acd-client-id string OAuth Client Id --acd-client-secret string OAuth Client Secret --acd-encoding MultiEncoder This sets the encoding for the backend. (default Slash,InvalidUtf8,Dot) - --acd-templink-threshold SizeSuffix Files >= this size will be downloaded via their tempLink. (default 9G) + --acd-templink-threshold SizeSuffix Files >= this size will be downloaded via their tempLink. (default 9Gi) --acd-token string OAuth Access Token as a JSON blob. --acd-token-url string Token server url. --acd-upload-wait-per-gb Duration Additional time per GiB to wait after a failed complete upload to see if it appears. (default 3m0s) @@ -175,7 +176,7 @@ and may be set in the config file. --azureblob-access-tier string Access tier of blob: hot, cool or archive. --azureblob-account string Storage Account Name (leave blank to use SAS URL or Emulator) --azureblob-archive-tier-delete Delete archive tier blobs before overwriting. - --azureblob-chunk-size SizeSuffix Upload chunk size (<= 100 MiB). (default 4M) + --azureblob-chunk-size SizeSuffix Upload chunk size (<= 100 MiB). (default 4Mi) --azureblob-disable-checksum Don't store MD5 checksum with object metadata. --azureblob-encoding MultiEncoder This sets the encoding for the backend. (default Slash,BackSlash,Del,Ctl,RightPeriod,InvalidUtf8) --azureblob-endpoint string Endpoint for the service @@ -193,8 +194,8 @@ and may be set in the config file. --azureblob-use-emulator Uses local storage emulator if provided as 'true' (leave blank if using real azure storage endpoint) --azureblob-use-msi Use a managed service identity to authenticate (only works in Azure) --b2-account string Account ID or Application Key ID - --b2-chunk-size SizeSuffix Upload chunk size. Must fit in memory. (default 96M) - --b2-copy-cutoff SizeSuffix Cutoff for switching to multipart copy (default 4G) + --b2-chunk-size SizeSuffix Upload chunk size. Must fit in memory. (default 96Mi) + --b2-copy-cutoff SizeSuffix Cutoff for switching to multipart copy (default 4Gi) --b2-disable-checksum Disable checksums for large (> upload cutoff) files --b2-download-auth-duration Duration Time before the authorization token will expire in s or suffix ms|s|m|h|d. (default 1w) --b2-download-url string Custom endpoint for downloads. @@ -205,7 +206,7 @@ and may be set in the config file. --b2-memory-pool-flush-time Duration How often internal memory buffer pools will be flushed. (default 1m0s) --b2-memory-pool-use-mmap Whether to use mmap buffers in internal memory pool. --b2-test-mode string A flag string for X-Bz-Test-Mode header for debugging. - --b2-upload-cutoff SizeSuffix Cutoff for switching to chunked upload. (default 200M) + --b2-upload-cutoff SizeSuffix Cutoff for switching to chunked upload. (default 200Mi) --b2-versions Include old versions in directory listings. --box-access-token string Box App Primary Access Token --box-auth-url string Auth server URL. @@ -218,12 +219,12 @@ and may be set in the config file. --box-root-folder-id string Fill in for rclone to use a non root folder as its starting point. --box-token string OAuth Access Token as a JSON blob. --box-token-url string Token server url. - --box-upload-cutoff SizeSuffix Cutoff for switching to multipart upload (>= 50 MiB). (default 50M) + --box-upload-cutoff SizeSuffix Cutoff for switching to multipart upload (>= 50 MiB). (default 50Mi) --cache-chunk-clean-interval Duration How often should the cache perform cleanups of the chunk storage. (default 1m0s) --cache-chunk-no-memory Disable the in-memory cache for storing chunks during streaming. --cache-chunk-path string Directory to cache chunk files. (default "$HOME/.cache/rclone/cache-backend") - --cache-chunk-size SizeSuffix The size of a chunk (partial file data). (default 5M) - --cache-chunk-total-size SizeSuffix The total size that the chunks can take up on the local disk. (default 10G) + --cache-chunk-size SizeSuffix The size of a chunk (partial file data). (default 5Mi) + --cache-chunk-total-size SizeSuffix The total size that the chunks can take up on the local disk. (default 10Gi) --cache-db-path string Directory to store file structure metadata DB. (default "$HOME/.cache/rclone/cache-backend") --cache-db-purge Clear all the cached data for this remote on start. --cache-db-wait-time Duration How long to wait for the DB to be available - 0 is unlimited (default 1s) @@ -239,13 +240,13 @@ and may be set in the config file. --cache-tmp-wait-time Duration How long should files be stored in local cache before being uploaded (default 15s) --cache-workers int How many workers should run in parallel to download chunks. (default 4) --cache-writes Cache file data on writes through the FS - --chunker-chunk-size SizeSuffix Files larger than chunk size will be split in chunks. (default 2G) + --chunker-chunk-size SizeSuffix Files larger than chunk size will be split in chunks. (default 2Gi) --chunker-fail-hard Choose how chunker should handle files with missing or invalid chunks. --chunker-hash-type string Choose how chunker handles hash sums. All modes but "none" require metadata. (default "md5") --chunker-remote string Remote to chunk/unchunk. --compress-level int GZIP compression level (-2 to 9). (default -1) --compress-mode string Compression mode. (default "gzip") - --compress-ram-cache-limit SizeSuffix Some remotes don't allow the upload of files with unknown size. (default 20M) + --compress-ram-cache-limit SizeSuffix Some remotes don't allow the upload of files with unknown size. (default 20Mi) --compress-remote string Remote to compress. -L, --copy-links Follow symlinks and copy the pointed to item. --crypt-directory-name-encryption Option to either encrypt directory names or leave them intact. (default true) @@ -260,7 +261,7 @@ and may be set in the config file. --drive-allow-import-name-change Allow the filetype to change when uploading Google docs (e.g. file.doc to file.docx). This will confuse sync and reupload every time. --drive-auth-owner-only Only consider files owned by the authenticated user. --drive-auth-url string Auth server URL. - --drive-chunk-size SizeSuffix Upload chunk size. Must a power of 2 >= 256k. (default 8M) + --drive-chunk-size SizeSuffix Upload chunk size. Must a power of 2 >= 256k. (default 8Mi) --drive-client-id string Google Application Client Id --drive-client-secret string OAuth Client Secret --drive-disable-http2 Disable drive using http2 (default true) @@ -290,13 +291,16 @@ and may be set in the config file. --drive-token string OAuth Access Token as a JSON blob. --drive-token-url string Token server url. --drive-trashed-only Only show files that are in the trash. - --drive-upload-cutoff SizeSuffix Cutoff for switching to chunked upload (default 8M) + --drive-upload-cutoff SizeSuffix Cutoff for switching to chunked upload (default 8Mi) --drive-use-created-date Use file created date instead of modified date., --drive-use-shared-date Use date file was shared instead of modified date. --drive-use-trash Send files to the trash instead of deleting permanently. (default true) --drive-v2-download-min-size SizeSuffix If Object's are greater, use drive v2 API to download. (default off) --dropbox-auth-url string Auth server URL. - --dropbox-chunk-size SizeSuffix Upload chunk size. (< 150M). (default 48M) + --dropbox-batch-mode string Upload file batching sync|async|off. (default "sync") + --dropbox-batch-size int Max number of files in upload batch. + --dropbox-batch-timeout Duration Max time to allow an idle upload batch before uploading (default 0s) + --dropbox-chunk-size SizeSuffix Upload chunk size. (< 150Mi). (default 48Mi) --dropbox-client-id string OAuth Client Id --dropbox-client-secret string OAuth Client Secret --dropbox-encoding MultiEncoder This sets the encoding for the backend. (default Slash,BackSlash,Del,RightSpace,InvalidUtf8,Dot) @@ -361,7 +365,7 @@ and may be set in the config file. --http-no-slash Set this if the site doesn't end directories with / --http-url string URL of http host to connect to --hubic-auth-url string Auth server URL. - --hubic-chunk-size SizeSuffix Above this size files will be chunked into a _segments container. (default 5G) + --hubic-chunk-size SizeSuffix Above this size files will be chunked into a _segments container. (default 5Gi) --hubic-client-id string OAuth Client Id --hubic-client-secret string OAuth Client Secret --hubic-encoding MultiEncoder This sets the encoding for the backend. (default Slash,InvalidUtf8) @@ -370,9 +374,9 @@ and may be set in the config file. --hubic-token-url string Token server url. --jottacloud-encoding MultiEncoder This sets the encoding for the backend. (default Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,Del,Ctl,InvalidUtf8,Dot) --jottacloud-hard-delete Delete files permanently rather than putting them into the trash. - --jottacloud-md5-memory-limit SizeSuffix Files bigger than this will be cached on disk to calculate the MD5 if required. (default 10M) + --jottacloud-md5-memory-limit SizeSuffix Files bigger than this will be cached on disk to calculate the MD5 if required. (default 10Mi) --jottacloud-trashed-only Only show files that are in the trash. - --jottacloud-upload-resume-limit SizeSuffix Files bigger than this can be resumed if the upload fail's. (default 10M) + --jottacloud-upload-resume-limit SizeSuffix Files bigger than this can be resumed if the upload fail's. (default 10Mi) --koofr-encoding MultiEncoder This sets the encoding for the backend. (default Slash,BackSlash,Del,Ctl,InvalidUtf8,Dot) --koofr-endpoint string The Koofr API endpoint to use (default "https://app.koofr.net") --koofr-mountid string Mount ID of the mount to use. If omitted, the primary mount is used. @@ -387,16 +391,16 @@ and may be set in the config file. --local-no-preallocate Disable preallocation of disk space for transferred files --local-no-set-modtime Disable setting modtime --local-no-sparse Disable sparse files for multi-thread downloads - --local-no-unicode-normalization Don't apply unicode normalization to paths and filenames (Deprecated) --local-nounc string Disable UNC (long path names) conversion on Windows - --local-zero-size-links Assume the Stat size of links is zero (and read them instead) + --local-unicode-normalization Apply unicode NFC normalization to paths and filenames + --local-zero-size-links Assume the Stat size of links is zero (and read them instead) (Deprecated) --mailru-check-hash What should copy do if file checksum is mismatched or invalid (default true) --mailru-encoding MultiEncoder This sets the encoding for the backend. (default Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Del,Ctl,InvalidUtf8,Dot) --mailru-pass string Password (obscured) --mailru-speedup-enable Skip full upload if there is another file with same data hash. (default true) --mailru-speedup-file-patterns string Comma separated list of file name patterns eligible for speedup (put by hash). (default "*.mkv,*.avi,*.mp4,*.mp3,*.zip,*.gz,*.rar,*.pdf") - --mailru-speedup-max-disk SizeSuffix This option allows you to disable speedup (put by hash) for large files (default 3G) - --mailru-speedup-max-memory SizeSuffix Files larger than the size given below will always be hashed on disk. (default 32M) + --mailru-speedup-max-disk SizeSuffix This option allows you to disable speedup (put by hash) for large files (default 3Gi) + --mailru-speedup-max-memory SizeSuffix Files larger than the size given below will always be hashed on disk. (default 32Mi) --mailru-user string User name (usually email) --mega-debug Output more debug from Mega. --mega-encoding MultiEncoder This sets the encoding for the backend. (default Slash,InvalidUtf8,Dot) @@ -405,7 +409,7 @@ and may be set in the config file. --mega-user string User name -x, --one-file-system Don't cross filesystem boundaries (unix/macOS only). --onedrive-auth-url string Auth server URL. - --onedrive-chunk-size SizeSuffix Chunk size to upload files with - must be multiple of 320k (327,680 bytes). (default 10M) + --onedrive-chunk-size SizeSuffix Chunk size to upload files with - must be multiple of 320k (327,680 bytes). (default 10Mi) --onedrive-client-id string OAuth Client Id --onedrive-client-secret string OAuth Client Secret --onedrive-drive-id string The ID of the drive to use @@ -421,7 +425,7 @@ and may be set in the config file. --onedrive-server-side-across-configs Allow server-side operations (e.g. copy) to work across different onedrive configs. --onedrive-token string OAuth Access Token as a JSON blob. --onedrive-token-url string Token server url. - --opendrive-chunk-size SizeSuffix Files will be uploaded in chunks this size. (default 10M) + --opendrive-chunk-size SizeSuffix Files will be uploaded in chunks this size. (default 10Mi) --opendrive-encoding MultiEncoder This sets the encoding for the backend. (default Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,LeftSpace,LeftCrLfHtVt,RightSpace,RightCrLfHtVt,InvalidUtf8,Dot) --opendrive-password string Password. (obscured) --opendrive-username string Username @@ -436,20 +440,20 @@ and may be set in the config file. --premiumizeme-encoding MultiEncoder This sets the encoding for the backend. (default Slash,DoubleQuote,BackSlash,Del,Ctl,InvalidUtf8,Dot) --putio-encoding MultiEncoder This sets the encoding for the backend. (default Slash,BackSlash,Del,Ctl,InvalidUtf8,Dot) --qingstor-access-key-id string QingStor Access Key ID - --qingstor-chunk-size SizeSuffix Chunk size to use for uploading. (default 4M) + --qingstor-chunk-size SizeSuffix Chunk size to use for uploading. (default 4Mi) --qingstor-connection-retries int Number of connection retries. (default 3) --qingstor-encoding MultiEncoder This sets the encoding for the backend. (default Slash,Ctl,InvalidUtf8) --qingstor-endpoint string Enter an endpoint URL to connection QingStor API. --qingstor-env-auth Get QingStor credentials from runtime. Only applies if access_key_id and secret_access_key is blank. --qingstor-secret-access-key string QingStor Secret Access Key (password) --qingstor-upload-concurrency int Concurrency for multipart uploads. (default 1) - --qingstor-upload-cutoff SizeSuffix Cutoff for switching to chunked upload (default 200M) + --qingstor-upload-cutoff SizeSuffix Cutoff for switching to chunked upload (default 200Mi) --qingstor-zone string Zone to connect to. --s3-access-key-id string AWS Access Key ID. --s3-acl string Canned ACL used when creating buckets and storing or copying objects. --s3-bucket-acl string Canned ACL used when creating buckets. - --s3-chunk-size SizeSuffix Chunk size to use for uploading. (default 5M) - --s3-copy-cutoff SizeSuffix Cutoff for switching to multipart copy (default 4.656G) + --s3-chunk-size SizeSuffix Chunk size to use for uploading. (default 5Mi) + --s3-copy-cutoff SizeSuffix Cutoff for switching to multipart copy (default 4.656Gi) --s3-disable-checksum Don't store MD5 checksum with object metadata --s3-disable-http2 Disable usage of http2 for S3 backends --s3-encoding MultiEncoder This sets the encoding for the backend. (default Slash,InvalidUtf8,Dot) @@ -464,6 +468,7 @@ and may be set in the config file. --s3-memory-pool-use-mmap Whether to use mmap buffers in internal memory pool. --s3-no-check-bucket If set, don't attempt to check the bucket exists or create it --s3-no-head If set, don't HEAD uploaded objects to check integrity + --s3-no-head-object If set, don't HEAD objects --s3-profile string Profile to use in the shared credentials file --s3-provider string Choose your S3 provider. --s3-region string Region to connect to. @@ -478,7 +483,7 @@ and may be set in the config file. --s3-sse-kms-key-id string If using KMS ID you must provide the ARN of Key. --s3-storage-class string The storage class to use when storing new objects in S3. --s3-upload-concurrency int Concurrency for multipart uploads. (default 4) - --s3-upload-cutoff SizeSuffix Cutoff for switching to chunked upload (default 200M) + --s3-upload-cutoff SizeSuffix Cutoff for switching to chunked upload (default 200Mi) --s3-use-accelerate-endpoint If true use the AWS S3 accelerated endpoint. --s3-v2-auth If true use v2 authentication. --seafile-2fa Two-factor authentication ('true' if the account has 2FA enabled) @@ -491,6 +496,7 @@ and may be set in the config file. --seafile-user string User name (usually email address) --sftp-ask-password Allow asking for SFTP password when needed. --sftp-disable-concurrent-reads If set don't use concurrent reads + --sftp-disable-concurrent-writes If set don't use concurrent writes --sftp-disable-hashcheck Disable the execution of SSH commands to determine if remote file hashing is available. --sftp-host string SSH host to connect to --sftp-idle-timeout Duration Max time before closing idle connections (default 1m0s) @@ -512,11 +518,11 @@ and may be set in the config file. --sftp-use-fstat If set use fstat instead of stat --sftp-use-insecure-cipher Enable the use of insecure ciphers and key exchange methods. --sftp-user string SSH username, leave blank for current username, $USER - --sharefile-chunk-size SizeSuffix Upload chunk size. Must a power of 2 >= 256k. (default 64M) + --sharefile-chunk-size SizeSuffix Upload chunk size. Must a power of 2 >= 256k. (default 64Mi) --sharefile-encoding MultiEncoder This sets the encoding for the backend. (default Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,LeftSpace,LeftPeriod,RightSpace,RightPeriod,InvalidUtf8,Dot) --sharefile-endpoint string Endpoint for API calls. --sharefile-root-folder-id string ID of the root folder - --sharefile-upload-cutoff SizeSuffix Cutoff for switching to multipart upload. (default 128M) + --sharefile-upload-cutoff SizeSuffix Cutoff for switching to multipart upload. (default 128Mi) --skip-links Don't warn about skipped symlinks. --sugarsync-access-key-id string Sugarsync Access Key ID. --sugarsync-app-id string Sugarsync App ID. @@ -535,7 +541,7 @@ and may be set in the config file. --swift-auth string Authentication URL for server (OS_AUTH_URL). --swift-auth-token string Auth Token from alternate authentication - optional (OS_AUTH_TOKEN) --swift-auth-version int AuthVersion - optional - set to (1,2,3) if your auth URL has no version (ST_AUTH_VERSION) - --swift-chunk-size SizeSuffix Above this size files will be chunked into a _segments container. (default 5G) + --swift-chunk-size SizeSuffix Above this size files will be chunked into a _segments container. (default 5Gi) --swift-domain string User domain - optional (v3 auth) (OS_USER_DOMAIN_NAME) --swift-encoding MultiEncoder This sets the encoding for the backend. (default Slash,InvalidUtf8) --swift-endpoint-type string Endpoint type to choose from the service catalogue (OS_ENDPOINT_TYPE) (default "public") @@ -561,9 +567,12 @@ and may be set in the config file. --union-create-policy string Policy to choose upstream on CREATE category. (default "epmfs") --union-search-policy string Policy to choose upstream on SEARCH category. (default "ff") --union-upstreams string List of space separated upstreams. + --uptobox-access-token string Your access Token, get it from https://uptobox.com/my_account + --uptobox-encoding MultiEncoder This sets the encoding for the backend. (default Slash,LtGt,DoubleQuote,BackQuote,Del,Ctl,LeftSpace,InvalidUtf8,Dot) --webdav-bearer-token string Bearer token instead of user/pass (e.g. a Macaroon) --webdav-bearer-token-command string Command to run to get a bearer token --webdav-encoding string This sets the encoding for the backend. + --webdav-headers CommaSepList Set HTTP headers for all transactions --webdav-pass string Password. (obscured) --webdav-url string URL of http host to connect to --webdav-user string User name. In case NTLM authentication is used, the username should be in the format 'Domain\User'.