Local Cloud Windows

Here is what I just found with a Google search and it worked for me. Open the Control Panel select Programs and Features then open Turn Windows features on or off then make sure the following box is checked, SMB 1.0/CIFS File Sharing Support, your computer will have to reboot for it to take affect. See images below, click on, tap or activate images to enlarge them. End results, my My Cloud is. For those folks who don’t trust their data in the cloud, the best storage solution is usually local, meaning either an external hard drive or a computer.

Local Filesystem

Local paths are specified as normal filesystem paths, eg /path/to/wherever, so

Will sync /home/source to /tmp/destination

These can be configured into the config file for consistencies sake,but it is probably easier not to.

Cloud

Modified time

Rclone reads and writes the modified time using an accuracy determined bythe OS. Typically this is 1ns on Linux, 10 ns on Windows and 1 Secondon OS X.

Filenames

Filenames should be encoded in UTF-8 on disk. This is the normal casefor Windows and OS X.

There is a bit more uncertainty in the Linux world, but newdistributions will have UTF-8 encoded files names. If you are using anold Linux filesystem with non UTF-8 file names (eg latin1) then youcan use the convmv tool to convert the filesystem to UTF-8. Thistool is available in most distributions' package managers.

Windows cloud app

If an invalid (non-UTF8) filename is read, the invalid characters willbe replaced with a quoted representation of the invalid bytes. The namegroxdf will be transferred as gro‛DF. rclone will emit a debugmessage in this case (use -v to see), eg

Restricted characters

On non Windows platforms the following characters are replaced whenhandling file names.

CharacterValueReplacement
NUL0x00
/0x2F

When running on Windows the following characters are replaced. Thislist is based on the Windows file naming conventions.

CharacterValueReplacement
NUL0x00
SOH0x01
STX0x02
ETX0x03
EOT0x04
ENQ0x05
ACK0x06
BEL0x07
BS0x08
HT0x09
LF0x0A
VT0x0B
FF0x0C
CR0x0D
SO0x0E
SI0x0F
DLE0x10
DC10x11
DC20x12
DC30x13
DC40x14
NAK0x15
SYN0x16
ETB0x17
CAN0x18
EM0x19
SUB0x1A
ESC0x1B
FS0x1C
GS0x1D
RS0x1E
US0x1F
/0x2F
'0x22
*0x2A
:0x3A
<0x3C
>0x3E
?0x3F
0x5C
0x7C

File names on Windows can also not end with the following characters.These only get replaced if they are the last character in the name:

CharacterValueReplacement
SP0x20
.0x2E

Invalid UTF-8 bytes will also be replaced,as they can't be converted to UTF-16.

Long paths on Windows

Rclone handles long paths automatically, by converting all paths to longUNC pathswhich allows paths up to 32,767 characters.

This is why you will see that your paths, for instance c:files isconverted to the UNC path ?c:files in the output,and servershare is converted to ?UNCservershare.

However, in rare cases this may cause problems with buggy filesystem drivers like EncFS.To disable UNC conversion globally, add this to your .rclone.conf file:

If you want to selectively disable UNC, you can add it to a separate entry like this:

And use rclone like this:

rclone copy c:src nounc:z:dst

This will use UNC paths on c:src but not on z:dst.Of course this will cause problems if the absolute path length of afile exceeds 258 characters on z, so only use this option if you have to.

Symlinks / Junction points

Normally rclone will ignore symlinks or junction points (which behavelike symlinks under Windows).

If you supply --copy-links or -L then rclone will follow thesymlink and copy the pointed to file or directory. Note that thisflag is incompatible with -links / -l.

This flag applies to all commands.

For example, supposing you have a directory structure like this

Then you can see the difference with and without the flag like this

and

--links, -l

Normally rclone will ignore symlinks or junction points (which behavelike symlinks under Windows).

If you supply this flag then rclone will copy symbolic links from the local storage,and store them as text files, with a '.rclonelink' suffix in the remote storage.

The text file will contain the target of the symbolic link (see example).

This flag applies to all commands.

For example, supposing you have a directory structure like this

Copying the entire directory with '-l'

The remote files are created with a '.rclonelink' suffix

The remote files will contain the target of the symbolic links

Copying them back with '-l'

However, if copied back without '-l'

Note that this flag is incompatible with -copy-links / -L.

Restricting filesystems with --one-file-system

Normally rclone will recurse through filesystems as mounted.

However if you set --one-file-system or -x this tells rclone tostay in the filesystem specified by the root and not to recurse intodifferent file systems.

For example if you have a directory hierarchy like this

Using rclone --one-file-system copy root remote: will only copy file1 and file2. Eg

NB Rclone (like most unix tools such as du, rsync and tar)treats a bind mount to the same device as being on the samefilesystem.

NB This flag is only available on Unix based systems. On systemswhere it isn't supported (eg Windows) it will be ignored.

Standard Options

Here are the standard options specific to local (Local Disk).

--local-nounc

Disable UNC (long path names) conversion on Windows

  • Config: nounc
  • Env Var: RCLONE_LOCAL_NOUNC
  • Type: string
  • Default: '
  • Examples:
    • 'true'
      • Disables long file names

Advanced Options

Here are the advanced options specific to local (Local Disk).

--copy-links / -L

Follow symlinks and copy the pointed to item.

  • Config: copy_links
  • Env Var: RCLONE_LOCAL_COPY_LINKS
  • Type: bool
  • Default: false

--links / -l

Translate symlinks to/from regular files with a '.rclonelink' extension

  • Config: links
  • Env Var: RCLONE_LOCAL_LINKS
  • Type: bool
  • Default: false

--skip-links

Don't warn about skipped symlinks.This flag disables warning messages on skipped symlinks or junctionpoints, as you explicitly acknowledge that they should be skipped.

  • Config: skip_links
  • Env Var: RCLONE_LOCAL_SKIP_LINKS
  • Type: bool
  • Default: false

--local-no-unicode-normalization

Don't apply unicode normalization to paths and filenames (Deprecated)

This flag is deprecated now. Rclone no longer normalizes unicode filenames, but it compares them with unicode normalization in the syncroutine instead.

  • Config: no_unicode_normalization
  • Env Var: RCLONE_LOCAL_NO_UNICODE_NORMALIZATION
  • Type: bool
  • Default: false

--local-no-check-updated

Don't check to see if the files change during upload

Normally rclone checks the size and modification time of files as theyare being uploaded and aborts with a message which starts 'can't copy

  • source file is being updated' if the file changes during upload.

However on some file systems this modification time check may fail (egGlusterfs #2206) so thischeck can be disabled with this flag.

If this flag is set, rclone will use its best efforts to transfer afile which is being updated. If the file is only having thingsappended to it (eg a log) then rclone will transfer the log file withthe size it had the first time rclone saw it.

If the file is being modified throughout (not just appended to) thenthe transfer may fail with a hash check failure.

In detail, once the file has had stat() called on it for the firsttime we:

  • Only transfer the size that stat gave

  • Only checksum the size that stat gave

  • Don't update the stat info for the file

  • Config: no_check_updated

  • Env Var: RCLONE_LOCAL_NO_CHECK_UPDATED

  • Type: bool

  • Default: false

--one-file-system / -x

Don't cross filesystem boundaries (unix/macOS only).

  • Config: one_file_system
  • Env Var: RCLONE_LOCAL_ONE_FILE_SYSTEM
  • Type: bool
  • Default: false

--local-case-sensitive

Force the filesystem to report itself as case sensitive.

Normally the local backend declares itself as case insensitive onWindows/macOS and case sensitive for everything else. Use this flagto override the default choice.

  • Config: case_sensitive
  • Env Var: RCLONE_LOCAL_CASE_SENSITIVE
  • Type: bool
  • Default: false

--local-case-insensitive

Force the filesystem to report itself as case insensitive

Normally the local backend declares itself as case insensitive onWindows/macOS and case sensitive for everything else. Use this flagto override the default choice.

  • Config: case_insensitive
  • Env Var: RCLONE_LOCAL_CASE_INSENSITIVE
  • Type: bool
  • Default: false

--local-no-sparse

Disable sparse files for multi-thread downloads

On Windows platforms rclone will make sparse files when doingmulti-thread downloads. This avoids long pauses on large files wherethe OS zeros the file. However sparse files may be undesirable as theycause disk fragmentation and can be slow to work with.

  • Config: no_sparse
  • Env Var: RCLONE_LOCAL_NO_SPARSE
  • Type: bool
  • Default: false

--local-no-set-modtime

Disable setting modtime

Normally rclone updates modification time of files after they are doneuploading. This can cause permissions issues on Linux platforms whenthe user rclone is running as does not own the file uploaded, such aswhen copying to a CIFS mount owned by another user. If this option isenabled, rclone will no longer update the modtime after copying a file.

  • Config: no_set_modtime
  • Env Var: RCLONE_LOCAL_NO_SET_MODTIME
  • Type: bool
  • Default: false

--local-encoding

This sets the encoding for the backend.

See: the encoding section in the overview for more info.

  • Config: encoding
  • Env Var: RCLONE_LOCAL_ENCODING
  • Type: MultiEncoder
  • Default: Slash,Dot

Backend commands

Local Window Repair

Here are the commands specific to the local backend.

Windows Cloud Pc

Run them with

The help below will explain what arguments each command takes.

See the 'rclone backend' command for moreinfo on how to pass options and arguments.

These can be run on a running backend using the rc commandbackend/command.

noop

A null operation for testing backend commands

This is a test command which has some optionsyou can try to change the output.

Options:

  • 'echo': echo the input arguments
  • 'error': return an error based on option value