1---
2title: "Overview of cloud storage systems"
3description: "Overview of cloud storage systems"
4type: page
5---
6
7# Overview of cloud storage systems #
8
9Each cloud storage system is slightly different.  Rclone attempts to
10provide a unified interface to them, but some underlying differences
11show through.
12
13## Features ##
14
15Here is an overview of the major features of each cloud storage system.
16
17| Name                         | Hash        | ModTime | Case Insensitive | Duplicate Files | MIME Type |
18| ---------------------------- |:-----------:|:-------:|:----------------:|:---------------:|:---------:|
19| 1Fichier                     | Whirlpool   | No      | No               | Yes             | R         |
20| Amazon Drive                 | MD5         | No      | Yes              | No              | R         |
21| Amazon S3 (or S3 compatible) | MD5         | Yes     | No               | No              | R/W       |
22| Backblaze B2                 | SHA1        | Yes     | No               | No              | R/W       |
23| Box                          | SHA1        | Yes     | Yes              | No              | -         |
24| Citrix ShareFile             | MD5         | Yes     | Yes              | No              | -         |
25| Dropbox                      | DBHASH ¹    | Yes     | Yes              | No              | -         |
26| Enterprise File Fabric       | -           | Yes     | Yes              | No              | R/W       |
27| FTP                          | -           | No      | No               | No              | -         |
28| Google Cloud Storage         | MD5         | Yes     | No               | No              | R/W       |
29| Google Drive                 | MD5         | Yes     | No               | Yes             | R/W       |
30| Google Photos                | -           | No      | No               | Yes             | R         |
31| HDFS                         | -           | Yes     | No               | No              | -         |
32| HTTP                         | -           | No      | No               | No              | R         |
33| Hubic                        | MD5         | Yes     | No               | No              | R/W       |
34| Jottacloud                   | MD5         | Yes     | Yes              | No              | R         |
35| Koofr                        | MD5         | No      | Yes              | No              | -         |
36| Mail.ru Cloud                | Mailru ⁶    | Yes     | Yes              | No              | -         |
37| Mega                         | -           | No      | No               | Yes             | -         |
38| Memory                       | MD5         | Yes     | No               | No              | -         |
39| Microsoft Azure Blob Storage | MD5         | Yes     | No               | No              | R/W       |
40| Microsoft OneDrive           | SHA1 ⁵      | Yes     | Yes              | No              | R         |
41| OpenDrive                    | MD5         | Yes     | Yes              | Partial ⁸       | -         |
42| OpenStack Swift              | MD5         | Yes     | No               | No              | R/W       |
43| pCloud                       | MD5, SHA1 ⁷ | Yes     | No               | No              | W         |
44| premiumize.me                | -           | No      | Yes              | No              | R         |
45| put.io                       | CRC-32      | Yes     | No               | Yes             | R         |
46| QingStor                     | MD5         | No      | No               | No              | R/W       |
47| Seafile                      | -           | No      | No               | No              | -         |
48| SFTP                         | MD5, SHA1 ² | Yes     | Depends          | No              | -         |
49| Sia                          | -           | No      | No               | No              | -         |
50| SugarSync                    | -           | No      | No               | No              | -         |
51| Tardigrade                   | -           | Yes     | No               | No              | -         |
52| Uptobox                      | -           | No      | No               | Yes             | -         |
53| WebDAV                       | MD5, SHA1 ³ | Yes ⁴   | Depends          | No              | -         |
54| Yandex Disk                  | MD5         | Yes     | No               | No              | R         |
55| Zoho WorkDrive               | -           | No      | No               | No              | -         |
56| The local filesystem         | All         | Yes     | Depends          | No              | -         |
57
58### Notes
59
60¹ Dropbox supports [its own custom
61hash](https://www.dropbox.com/developers/reference/content-hash).
62This is an SHA256 sum of all the 4 MiB block SHA256s.
63
64² SFTP supports checksums if the same login has shell access and
65`md5sum` or `sha1sum` as well as `echo` are in the remote's PATH.
66
67³ WebDAV supports hashes when used with Owncloud and Nextcloud only.
68
69⁴ WebDAV supports modtimes when used with Owncloud and Nextcloud only.
70
71⁵ Microsoft OneDrive Personal supports SHA1 hashes, whereas OneDrive
72for business and SharePoint server support Microsoft's own
73[QuickXorHash](https://docs.microsoft.com/en-us/onedrive/developer/code-snippets/quickxorhash).
74
75Mail.ru uses its own modified SHA1 hash
76
77⁷ pCloud only supports SHA1 (not MD5) in its EU region
78
79⁸ Opendrive does not support creation of duplicate files using
80their web client interface or other stock clients, but the underlying
81storage platform has been determined to allow duplicate files, and it
82is possible to create them with `rclone`.  It may be that this is a
83mistake or an unsupported feature.
84
85### Hash ###
86
87The cloud storage system supports various hash types of the objects.
88The hashes are used when transferring data as an integrity check and
89can be specifically used with the `--checksum` flag in syncs and in
90the `check` command.
91
92To use the verify checksums when transferring between cloud storage
93systems they must support a common hash type.
94
95### ModTime ###
96
97The cloud storage system supports setting modification times on
98objects.  If it does then this enables a using the modification times
99as part of the sync.  If not then only the size will be checked by
100default, though the MD5SUM can be checked with the `--checksum` flag.
101
102All cloud storage systems support some kind of date on the object and
103these will be set when transferring from the cloud storage system.
104
105### Case Insensitive ###
106
107If a cloud storage systems is case sensitive then it is possible to
108have two files which differ only in case, e.g. `file.txt` and
109`FILE.txt`.  If a cloud storage system is case insensitive then that
110isn't possible.
111
112This can cause problems when syncing between a case insensitive
113system and a case sensitive system.  The symptom of this is that no
114matter how many times you run the sync it never completes fully.
115
116The local filesystem and SFTP may or may not be case sensitive
117depending on OS.
118
119  * Windows - usually case insensitive, though case is preserved
120  * OSX - usually case insensitive, though it is possible to format case sensitive
121  * Linux - usually case sensitive, but there are case insensitive file systems (e.g. FAT formatted USB keys)
122
123Most of the time this doesn't cause any problems as people tend to
124avoid files whose name differs only by case even on case sensitive
125systems.
126
127### Duplicate files ###
128
129If a cloud storage system allows duplicate files then it can have two
130objects with the same name.
131
132This confuses rclone greatly when syncing - use the `rclone dedupe`
133command to rename or remove duplicates.
134
135### Restricted filenames ###
136
137Some cloud storage systems might have restrictions on the characters
138that are usable in file or directory names.
139When `rclone` detects such a name during a file upload, it will
140transparently replace the restricted characters with similar looking
141Unicode characters. To handle the different sets of restricted characters
142for different backends, rclone uses something it calls [encoding](#encoding).
143
144This process is designed to avoid ambiguous file names as much as
145possible and allow to move files between many cloud storage systems
146transparently.
147
148The name shown by `rclone` to the user or during log output will only
149contain a minimal set of [replaced characters](#restricted-characters)
150to ensure correct formatting and not necessarily the actual name used
151on the cloud storage.
152
153This transformation is reversed when downloading a file or parsing
154`rclone` arguments. For example, when uploading a file named `my file?.txt`
155to Onedrive, it will be displayed as `my file?.txt` on the console, but
156stored as `my file?.txt` to Onedrive (the `?` gets replaced by the similar
157looking `?` character, the so-called "fullwidth question mark").
158The reverse transformation allows to read a file `unusual/name.txt`
159from Google Drive, by passing the name `unusual/name.txt` on the command line
160(the `/` needs to be replaced by the similar looking `/` character).
161
162#### Caveats {#restricted-filenames-caveats}
163
164The filename encoding system works well in most cases, at least
165where file names are written in English or similar languages.
166You might not even notice it: It just works. In some cases it may
167lead to issues, though. E.g. when file names are written in Chinese,
168or Japanese, where it is always the Unicode fullwidth variants of the
169punctuation marks that are used.
170
171On Windows, the characters `:`, `*` and `?` are examples of restricted
172characters. If these are used in filenames on a remote that supports it,
173Rclone will transparently convert them to their fullwidth Unicode
174variants `*`, `?` and `:` when downloading to Windows, and back again
175when uploading. This way files with names that are not allowed on Windows
176can still be stored.
177
178However, if you have files on your Windows system originally with these same
179Unicode characters in their names, they will be included in the same conversion
180process. E.g. if you create a file in your Windows filesystem with name
181`Test:1.jpg`, where `:` is the Unicode fullwidth colon symbol, and use
182rclone to upload it to Google Drive, which supports regular `:` (halfwidth
183question mark), rclone will replace the fullwidth `:` with the
184halfwidth `:` and store the file as `Test:1.jpg` in Google Drive. Since
185both Windows and Google Drive allows the name `Test:1.jpg`, it would
186probably be better if rclone just kept the name as is in this case.
187
188With the opposite situation; if you have a file named `Test:1.jpg`,
189in your Google Drive, e.g. uploaded from a Linux system where `:` is valid
190in file names. Then later use rclone to copy this file to your Windows
191computer you will notice that on your local disk it gets renamed
192to `Test:1.jpg`. The original filename is not legal on Windows, due to
193the `:`, and rclone therefore renames it to make the copy possible.
194That is all good. However, this can also lead to an issue: If you already
195had a *different* file named `Test:1.jpg` on Windows, and then use rclone
196to copy either way. Rclone will then treat the file originally named
197`Test:1.jpg` on Google Drive and the file originally named `Test:1.jpg`
198on Windows as the same file, and replace the contents from one with the other.
199
200Its virtually impossible to handle all cases like these correctly in all
201situations, but by customizing the [encoding option](#encoding), changing the
202set of characters that rclone should convert, you should be able to
203create a configuration that works well for your specific situation.
204See also the [example](/overview/#encoding-example-windows) below.
205
206(Windows was used as an example of a file system with many restricted
207characters, and Google drive a storage system with few.)
208
209#### Default restricted characters {#restricted-characters}
210
211The table below shows the characters that are replaced by default.
212
213When a replacement character is found in a filename, this character
214will be escaped with the `‛` character to avoid ambiguous file names.
215(e.g. a file named `␀.txt` would shown as `‛␀.txt`)
216
217Each cloud storage backend can use a different set of characters,
218which will be specified in the documentation for each backend.
219
220| Character | Value | Replacement |
221| --------- |:-----:|:-----------:|
222| NUL       | 0x00  | ␀           |
223| SOH       | 0x01  | ␁           |
224| STX       | 0x02  | ␂           |
225| ETX       | 0x03  | ␃           |
226| EOT       | 0x04  | ␄           |
227| ENQ       | 0x05  | ␅           |
228| ACK       | 0x06  | ␆           |
229| BEL       | 0x07  | ␇           |
230| BS        | 0x08  | ␈           |
231| HT        | 0x09  | ␉           |
232| LF        | 0x0A  | ␊           |
233| VT        | 0x0B  | ␋           |
234| FF        | 0x0C  | ␌           |
235| CR        | 0x0D  | ␍           |
236| SO        | 0x0E  | ␎           |
237| SI        | 0x0F  | ␏           |
238| DLE       | 0x10  | ␐           |
239| DC1       | 0x11  | ␑           |
240| DC2       | 0x12  | ␒           |
241| DC3       | 0x13  | ␓           |
242| DC4       | 0x14  | ␔           |
243| NAK       | 0x15  | ␕           |
244| SYN       | 0x16  | ␖           |
245| ETB       | 0x17  | ␗           |
246| CAN       | 0x18  | ␘           |
247| EM        | 0x19  | ␙           |
248| SUB       | 0x1A  | ␚           |
249| ESC       | 0x1B  | ␛           |
250| FS        | 0x1C  | ␜           |
251| GS        | 0x1D  | ␝           |
252| RS        | 0x1E  | ␞           |
253| US        | 0x1F  | ␟           |
254| /         | 0x2F  | /           |
255| DEL       | 0x7F  | ␡           |
256
257The default encoding will also encode these file names as they are
258problematic with many cloud storage systems.
259
260| File name | Replacement |
261| --------- |:-----------:|
262| .         | .          |
263| ..        | ..         |
264
265#### Invalid UTF-8 bytes {#invalid-utf8}
266
267Some backends only support a sequence of well formed UTF-8 bytes
268as file or directory names.
269
270In this case all invalid UTF-8 bytes will be replaced with a quoted
271representation of the byte value to allow uploading a file to such a
272backend. For example, the invalid byte `0xFE` will be encoded as `‛FE`.
273
274A common source of invalid UTF-8 bytes are local filesystems, that store
275names in a different encoding than UTF-8 or UTF-16, like latin1. See the
276[local filenames](/local/#filenames) section for details.
277
278#### Encoding option {#encoding}
279
280Most backends have an encoding option, specified as a flag
281`--backend-encoding` where `backend` is the name of the backend, or as
282a config parameter `encoding` (you'll need to select the Advanced
283config in `rclone config` to see it).
284
285This will have default value which encodes and decodes characters in
286such a way as to preserve the maximum number of characters (see
287above).
288
289However this can be incorrect in some scenarios, for example if you
290have a Windows file system with Unicode fullwidth characters
291`*`, `?` or `:`, that you want to remain as those characters on the
292remote rather than being translated to regular (halfwidth) `*`, `?` and `:`.
293
294The `--backend-encoding` flags allow you to change that. You can
295disable the encoding completely with `--backend-encoding None` or set
296`encoding = None` in the config file.
297
298Encoding takes a comma separated list of encodings. You can see the
299list of all possible values by passing an invalid value to this
300flag, e.g. `--local-encoding "help"`. The command `rclone help flags encoding`
301will show you the defaults for the backends.
302
303| Encoding  | Characters |
304| --------- | ---------- |
305| Asterisk | `*` |
306| BackQuote | `` ` `` |
307| BackSlash | `\` |
308| Colon | `:` |
309| CrLf | CR 0x0D, LF 0x0A |
310| Ctl | All control characters 0x00-0x1F |
311| Del | DEL 0x7F |
312| Dollar | `$` |
313| Dot | `.` or `..` as entire string |
314| DoubleQuote | `"` |
315| Hash | `#` |
316| InvalidUtf8 | An invalid UTF-8 character (e.g. latin1) |
317| LeftCrLfHtVt | CR 0x0D, LF 0x0A,HT 0x09, VT 0x0B on the left of a string |
318| LeftPeriod | `.` on the left of a string |
319| LeftSpace | SPACE on the left of a string |
320| LeftTilde | `~` on the left of a string |
321| LtGt | `<`, `>` |
322| None | No characters are encoded |
323| Percent | `%` |
324| Pipe | \| |
325| Question | `?` |
326| RightCrLfHtVt | CR 0x0D, LF 0x0A, HT 0x09, VT 0x0B on the right of a string |
327| RightPeriod | `.` on the right of a string |
328| RightSpace | SPACE on the right of a string |
329| SingleQuote | `'` |
330| Slash | `/` |
331| SquareBracket | `[`, `]` |
332
333##### Encoding example: FTP
334
335To take a specific example, the FTP backend's default encoding is
336
337    --ftp-encoding "Slash,Del,Ctl,RightSpace,Dot"
338
339However, let's say the FTP server is running on Windows and can't have
340any of the invalid Windows characters in file names. You are backing
341up Linux servers to this FTP server which do have those characters in
342file names. So you would add the Windows set which are
343
344    Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,RightSpace,RightPeriod,InvalidUtf8,Dot
345
346to the existing ones, giving:
347
348    Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,RightSpace,RightPeriod,InvalidUtf8,Dot,Del,RightSpace
349
350This can be specified using the `--ftp-encoding` flag or using an `encoding` parameter in the config file.
351
352##### Encoding example: Windows
353
354As a nother example, take a Windows system where there is a file with
355name `Test:1.jpg`, where `:` is the Unicode fullwidth colon symbol.
356When using rclone to copy this to a remote which supports `:`,
357the regular (halfwidth) colon (such as Google Drive), you will notice
358that the file gets renamed to `Test:1.jpg`.
359
360To avoid this you can change the set of characters rclone should convert
361for the local filesystem, using command-line argument `--local-encoding`.
362Rclone's default behavior on Windows corresponds to
363
364```
365--local-encoding "Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,RightSpace,RightPeriod,InvalidUtf8,Dot"
366```
367
368If you want to use fullwidth characters `:`, `*` and `?` in your filenames
369without rclone changing them when uploading to a remote, then set the same as
370the default value but without `Colon,Question,Asterisk`:
371
372```
373--local-encoding "Slash,LtGt,DoubleQuote,Pipe,BackSlash,Ctl,RightSpace,RightPeriod,InvalidUtf8,Dot"
374```
375
376Alternatively, you can disable the conversion of any characters with `--local-encoding None`.
377
378Instead of using command-line argument `--local-encoding`, you may also set it
379as [environment variable](/docs/#environment-variables) `RCLONE_LOCAL_ENCODING`,
380or [configure](/docs/#configure) a remote of type `local` in your config,
381and set the `encoding` option there.
382
383The risk by doing this is that if you have a filename with the regular (halfwidth)
384`:`, `*` and `?` in your cloud storage, and you try to download
385it to your Windows filesystem, this will fail. These characters are not
386valid in filenames on Windows, and you have told rclone not to work around
387this by converting them to valid fullwidth variants.
388
389### MIME Type ###
390
391MIME types (also known as media types) classify types of documents
392using a simple text classification, e.g. `text/html` or
393`application/pdf`.
394
395Some cloud storage systems support reading (`R`) the MIME type of
396objects and some support writing (`W`) the MIME type of objects.
397
398The MIME type can be important if you are serving files directly to
399HTTP from the storage system.
400
401If you are copying from a remote which supports reading (`R`) to a
402remote which supports writing (`W`) then rclone will preserve the MIME
403types.  Otherwise they will be guessed from the extension, or the
404remote itself may assign the MIME type.
405
406## Optional Features ##
407
408All rclone remotes support a base command set. Other features depend
409upon backend specific capabilities.
410
411| Name                         | Purge | Copy | Move | DirMove | CleanUp | ListR | StreamUpload | LinkSharing  | About | EmptyDir |
412| ---------------------------- |:-----:|:----:|:----:|:-------:|:-------:|:-----:|:------------:|:------------:|:-----:|:--------:|
413| 1Fichier                     | No    | Yes  | Yes  | No      | No      | No    | No           | Yes          | No    | Yes      |
414| Amazon Drive                 | Yes   | No   | Yes  | Yes     | No      | No    | No           | No           | No    | Yes      |
415| Amazon S3                    | No    | Yes  | No   | No      | Yes     | Yes   | Yes          | Yes          | No    | No       |
416| Backblaze B2                 | No    | Yes  | No   | No      | Yes     | Yes   | Yes          | Yes          | No    | No       |
417| Box                          | Yes   | Yes  | Yes  | Yes     | Yes ‡‡  | No    | Yes          | Yes          | Yes   | Yes      |
418| Citrix ShareFile             | Yes   | Yes  | Yes  | Yes     | No      | No    | Yes          | No           | No    | Yes      |
419| Dropbox                      | Yes   | Yes  | Yes  | Yes     | No      | No    | Yes          | Yes          | Yes   | Yes      |
420| Enterprise File Fabric       | Yes   | Yes  | Yes  | Yes     | Yes     | No    | No           | No           | No    | Yes      |
421| FTP                          | No    | No   | Yes  | Yes     | No      | No    | Yes          | No           | No    | Yes      |
422| Google Cloud Storage         | Yes   | Yes  | No   | No      | No      | Yes   | Yes          | No           | No    | No       |
423| Google Drive                 | Yes   | Yes  | Yes  | Yes     | Yes     | Yes   | Yes          | Yes          | Yes   | Yes      |
424| Google Photos                | No    | No   | No   | No      | No      | No    | No           | No           | No    | No       |
425| HDFS                         | Yes   | No   | No   | No      | No      | No    | Yes          | No           | Yes   | Yes      |
426| HTTP                         | No    | No   | No   | No      | No      | No    | No           | No           | No    | Yes      |
427| Hubic                        | Yes † | Yes  | No   | No      | No      | Yes   | Yes          | No           | Yes   | No       |
428| Jottacloud                   | Yes   | Yes  | Yes  | Yes     | Yes     | Yes   | No           | Yes          | Yes   | Yes      |
429| Mail.ru Cloud                | Yes   | Yes  | Yes  | Yes     | Yes     | No    | No           | Yes          | Yes   | Yes      |
430| Mega                         | Yes   | No   | Yes  | Yes     | Yes     | No    | No           | Yes          | Yes   | Yes      |
431| Memory                       | No    | Yes  | No   | No      | No      | Yes   | Yes          | No           | No    | No       |
432| Microsoft Azure Blob Storage | Yes   | Yes  | No   | No      | No      | Yes   | Yes          | No           | No    | No       |
433| Microsoft OneDrive           | Yes   | Yes  | Yes  | Yes     | Yes     | No    | No           | Yes          | Yes   | Yes      |
434| OpenDrive                    | Yes   | Yes  | Yes  | Yes     | No      | No    | No           | No           | No    | Yes      |
435| OpenStack Swift              | Yes † | Yes  | No   | No      | No      | Yes   | Yes          | No           | Yes   | No       |
436| pCloud                       | Yes   | Yes  | Yes  | Yes     | Yes     | No    | No           | Yes          | Yes   | Yes      |
437| premiumize.me                | Yes   | No   | Yes  | Yes     | No      | No    | No           | Yes          | Yes   | Yes      |
438| put.io                       | Yes   | No   | Yes  | Yes     | Yes     | No    | Yes          | No           | Yes   | Yes      |
439| QingStor                     | No    | Yes  | No   | No      | Yes     | Yes   | No           | No           | No    | No       |
440| Seafile                      | Yes   | Yes  | Yes  | Yes     | Yes     | Yes   | Yes          | Yes          | Yes   | Yes      |
441| SFTP                         | No    | No   | Yes  | Yes     | No      | No    | Yes          | No           | Yes   | Yes      |
442| SugarSync                    | Yes   | Yes  | Yes  | Yes     | No      | No    | Yes          | Yes          | No    | Yes      |
443| Tardigrade                   | Yes † | No   | No   | No      | No      | Yes   | Yes          | No           | No    | No       |
444| Uptobox                      | No    | Yes  | Yes  | Yes     | No      | No    | No           | No           | No    | No       |
445| WebDAV                       | Yes   | Yes  | Yes  | Yes     | No      | No    | Yes ‡        | No           | Yes   | Yes      |
446| Yandex Disk                  | Yes   | Yes  | Yes  | Yes     | Yes     | No    | Yes          | Yes          | Yes   | Yes      |
447| Zoho WorkDrive               | Yes   | Yes  | Yes  | Yes     | No      | No    | No           | No           | Yes   | Yes      |
448| The local filesystem         | Yes   | No   | Yes  | Yes     | No      | No    | Yes          | No           | Yes   | Yes      |
449
450### Purge ###
451
452This deletes a directory quicker than just deleting all the files in
453the directory.
454
455† Note Swift, Hubic, and Tardigrade implement this in order to delete
456directory markers but they don't actually have a quicker way of deleting
457files other than deleting them individually.
458
459‡ StreamUpload is not supported with Nextcloud
460
461### Copy ###
462
463Used when copying an object to and from the same remote.  This known
464as a server-side copy so you can copy a file without downloading it
465and uploading it again.  It is used if you use `rclone copy` or
466`rclone move` if the remote doesn't support `Move` directly.
467
468If the server doesn't support `Copy` directly then for copy operations
469the file is downloaded then re-uploaded.
470
471### Move ###
472
473Used when moving/renaming an object on the same remote.  This is known
474as a server-side move of a file.  This is used in `rclone move` if the
475server doesn't support `DirMove`.
476
477If the server isn't capable of `Move` then rclone simulates it with
478`Copy` then delete.  If the server doesn't support `Copy` then rclone
479will download the file and re-upload it.
480
481### DirMove ###
482
483This is used to implement `rclone move` to move a directory if
484possible.  If it isn't then it will use `Move` on each file (which
485falls back to `Copy` then download and upload - see `Move` section).
486
487### CleanUp ###
488
489This is used for emptying the trash for a remote by `rclone cleanup`.
490
491If the server can't do `CleanUp` then `rclone cleanup` will return an
492error.
493
494‡‡ Note that while Box implements this it has to delete every file
495individually so it will be slower than emptying the trash via the WebUI
496
497### ListR ###
498
499The remote supports a recursive list to list all the contents beneath
500a directory quickly.  This enables the `--fast-list` flag to work.
501See the [rclone docs](/docs/#fast-list) for more details.
502
503### StreamUpload ###
504
505Some remotes allow files to be uploaded without knowing the file size
506in advance. This allows certain operations to work without spooling the
507file to local disk first, e.g. `rclone rcat`.
508
509### LinkSharing ###
510
511Sets the necessary permissions on a file or folder and prints a link
512that allows others to access them, even if they don't have an account
513on the particular cloud provider.
514
515### About ###
516
517Rclone `about` prints quota information for a remote. Typical output
518includes bytes used, free, quota and in trash.
519
520If a remote lacks about capability `rclone about remote:`returns
521an error.
522
523Backends without about capability cannot determine free space for an
524rclone mount, or use policy `mfs` (most free space) as a member of an
525rclone union remote.
526
527See [rclone about command](https://rclone.org/commands/rclone_about/)
528
529### EmptyDir ###
530
531The remote supports empty directories. See [Limitations](/bugs/#limitations)
532 for details. Most Object/Bucket based remotes do not support this.
533