Starting with Resilio Connect v2.10 Agents support system integrated Selective Sync functionality which is based on special Windows API.
It allows to access and download files directly using a file browser or transparently through an application. Some limitations in usage flow apply, see them listed below.
To enable it for an agent put option "Native selective sync" to true in Agent profile. When enabled, the Agent will automatically switch to the new selective sync mode:
- rls* placeholders will be replaced with dehydrated files;
- downloaded files and subdirectories will have new status "Available on this device" (see below) and representative icons on them; Note, such subdirectories will not continue syncing automatically, will need to have their status changed to "Always available on this device".
- Resilio Connect context menu items will be removed, new native Windows context menu items will be used instead;
Don't run two agents with Selective Sync on same computerRunning two agents in Selective Sync mode on same computer is not supported and highly not advisable.
Possbile conflicting with One-DriveConfiguring Agent to sync a One-Drve folder with 'on demand' files won't work - these files won't be uploaded and job won't be completed
Advanced selective sync works only on Windows 10 build 1709 and newer, and Windows Server 2016 and newer. Also requires Cldapi.dll, located in C:\Windows\System32.
Works for local NTFS, which can be accessed via SMB. It does not work for FAT32 and exFAT file systems.
MANAGING FILES AND PLACEHOLDERS
All files and subfolders are seen in a file manager with the following availability statutes:
File is set to be automatically synced. If this is the status of a subdirectory, all files inside it will be automatically downloaded. If a new file is created in such a subdirectory, it gets this status. Any updates to the files on remote agents will be auto-synced.
File version is downloaded to the current device and is available here. It also means that if this file changes on remote agent, it gets cleared off and reverted to a dehydrated file (placeholder). Local file changes will be synced to remote agents. Newly created files in a selective sync subdirectory have this status.
Dehydrated file - file is an empty placeholder and can be downloaded from remote agent. It consumes only 1 KB of storage (filesystem header).
All files are dehydrated after cleanup timeout as per Agent Profile settings.
||File is being downloaded and opened in an application. It cannot be canceled for certain types of files (mountable).|
File is being processed in any way: is going to be downloaded or cleared off, local changes to the files are being processed, newly created file is being processed, for example, is being copied into sync folder.
Files which are ignored by ignore rules are also marked with this status.
Files can be managed through an application, or a file manager using context menu:
- Always keep on the device. Makes file always available on the device and automatically download any file updates from remote agents.
- Free up space. Converts the file to a placeholder. Until it's processed, file's status is and then changes to Available when online. If “Free up space” is performed on a subdirectory, all items inside it are cleared but browsing inside it is still possible. File won't free up space if it's still opened in an application, and will keep showing .
Files free up space if cleanup timeout is configured in Agent profile, but do that only when folder is rescanned periodically or manually. Files with status "Always available on this device" are not cleaned up.
Double-clicking on a file. If file is a placeholder, it will be downloaded and opened in an application. File becomes "Available on this device".
System’s “Delete” deletes files to Recycle Bin and propagates this deletion to remote agents and puts files to Archive there.
It does not revert files to placeholders! Additionally, placeholders (with status "Available when online") will not be even moved to Recycle bin locally.
When job is removed, all placeholders are removed from disk from "selective sync" agents. Hydrated files remain.
NATIVE SELECTIVE SYNC AND 'PREVIOUS' SELECTIVE SYNC
Previous Selective Sync implementation remains and will work. It's fully compatible with native Selective Sync enabled on other agents.
A folder with enabled native selective sync is available fover SMB and files are accessible, but with some limitations. Placeholders will be created in the SS share and user can download files by double-click but there will be no context menu for placeholders.
PECULIARITIES AND LIMITATIONS
Changed file attributes (timestamps, permissions) are not synced from a placeholder to remote agents until file is downloaded locally. For changes to be propagated to remote agents, attributes must be changed after you download the file. Otherwise, changes will be re-written as you download the file.
Renaming or moving of dehydrated files (placeholders) is not supported. Remote agents won't be able to download the renamed file, and it will be considered as deleted.
It's not possible to use new Selective Sync for root of a mounted network share (Z:\foo), Agent will give error