Mounting the File Fabric with Rclone in Windows

Rclone v1.54 now supports the Enterprise File Fabric (EFF) v2006.03 for copying, moving, syncing and listing of files/objects. Did you know Rclone also supports mapping drives in Windows or mounting in OSX/Linux?

Mounting/mapping drives can be useful for end users navigating storage from GUI based tools like Windows Explorer and Mac Finder. Storage Made Easy already ships easy to install tools for Mac/Linux/Windows, so why use Rclone instead? Sometimes a system requires headless access to a drive or mount point as in the case of server Linux installations or Windows server core installations.

Windows drive mapping

For Windows, I like to download the latest rclone release and unzip into a directory called rclone.  This article will assume rclone can be found at c:\rclone\rclone.exe, but this location is only a suggesiton.

Once downloaded run

c:\rclone\rclone.exe config

from a command prompt and configure per the instructions in the article.

Mapping a drive letter in Windows also requires winfsp a fuse implemetation to run.  Download it here and install with the default options.

Once winfsp is installed and rclone can list the File Fabric run the following command to map the Z: as the Enterprise File Fabric.

c:\rclone\rclone mount --vfs-case-insensitive --vfs-cache-mode full --write-back-cache --vfs-write-back 10s --vfs-cache-max-age 300s --vfs-cache-max-size 5000M --vfs-cache-poll-interval 60s  --cache-dir %temp% sme: z: --network-mode

This will run the mount in foreground. You will need to open another terminal to test reading and writing from the mount point. The benefit of running in foreground mode is that any errors will appear in the terminal running the mount command. This allows for proper testing of the options passed in to run rclone and adjustments.

Rclone mount suggested options

SME suggests the following Rclone mount options to provide an optimal experience.

–vfs-case-insensitive Windows filesystems are normally case insensitive
–vfs-cache-mode full Cache is required for writing data to the Enterprise File Fabric
–write-back-cache (Optional) Increases performance by allowing writes to be acknowledged to applications after successful write to cache.
–vfs-write-back 10s Waits 10 seconds after a file is closed in cache before uploading to EFF. This minimizes the chance of starting an upload of a file which is still being actively write to.
–vfs-cache-max-age 300s This sets a 300 second max age of items in the cache. Adjust as needed, longer cache times result in larger cache, but possibly increased performance.
–vfs-cache-max-size 5000M (Optional) Sets the max size of the cache to prevent cache from filling disk. Cache needs to be larger than the largest file the mount will need to work with.
–vfs-cache-poll-interval 60s How often rclone checks the cache for stale files.
–cache-dir %temp% (Optional) Sets the cache location.
sme: This is the name of the rclone remote. To mount a specific directory use [remote]:dir1/subdir2/
z: Mapped Drive letter
–network-mode Maps drive as network drive instead of removable drive.

Additional notes:

Rclone has a number of flags and some may give enhanced performance with regard to moving alot of small files. The –transfers flag can allow more parallel data movement, the default is 4, but moving lots of small files may necessitate the changing of this value to 10 or 20.

Rclone mount in use with the Enterprise File Fabric should be limited to moving data to/from a remote Windows workstation. Rclone mount should not be used to copy/move data between remote providers as all data will be pulled through the workstation. Large data movements within and between providers should be done utilizing the Enterprise File Fabric File Manager or one of the Cloud tool packages, as these tools utilize the full SME EFF API.

Facebooktwitterredditpinterestlinkedinmailby feather
The following two tabs change content below.

Douglas Soltesz

Director Product Solutions at Storage Made Easy
Doug's focus is in Object and Cloud Storage APIs, Data Governance, Virtualization, and Containerization.