Limitations

Object Mount imposes no restrictions on local file accesses. The limitations listed in this section only apply to data stored on object-storage.

This document contains technical limitations applying to all Object Mount users. There are additional limitations dictated by your licence tier - set up a discovery call for more information on licensing and pricing.

Direct interception

Direct interception (using Object Mount CLI or LD_PRELOAD) does not currently support SUID binaries, or certain packaged apps like Snap, AppImage, or Flatpak applications. Future updates are planned to address this. If you need to use such apps, prefer to use user-guide-object-mount-on-fuse or user-guide-object-mount-flexmount.

Maximum object size

Depending on the solution provider, Object Mount has a limitation on the maximum file size it can store on a remote location. The following table indicates the maximum file sizes per provider.

Cloud providerMaximum file size
AWS S35 TB
Google Cloud Storage5 TB
Azure Storage4.77 TB

Ownership, permissions and file metadata

  • In the results of the command ls the owner of the remote objects is always the current user. Furthermore, remote file permissions are always set to 777.

  • The creation date of a remote directory is not always available to the system calls.

In Core File Access mode, the owner of the remote objects is by default always reported as the current user, and remote file permissions are always 777. Also, the creation time of directories is always displayed as the Unix Epoch (00:00:00 UTC on 1 January 1970). These can be overridden using CUNO_OPTIONS (user-guide-ownership-and-permissions).

Directories in Azure

Creating a directory in Azure Storage (using mkdir) will result in a remote blob called <no name> to be displayed inside the created directory when the user is using the GUI/file explorer that Azure portal provides. However, ls and all CLI commands will behave as expected.

Auto-completion

Auto-completion and wildcard characters are fully supported on a Object Mount active shell. This can be created either using the cuno command or using LD_PRELOAD (e.g. LD_PRELOAD=/usr/lib/cuno.so bash). In the latter, paths containing colons such as s3://bucket on cloud paths will only succeed if : is removed from the separator list variable COMP_WORDBREAKS. For example:

[[ "$LD_PRELOAD" =~ cuno ]] && export COMP_WORDBREAKS=${COMP_WORDBREAKS/:/}
[[ "$LD_PRELOAD" =~ cuno ]] && export COMP_WORDBREAKS=${COMP_WORDBREAKS/:/}

Memory-mapping

Currently, only read-only private file memory mapping is supported.

Applications

You may want to check the secton user-guide-tips-for-apps.

Previous
Tips for Apps