ossfs allows you to attach OSS buckets to local file systems in Linux. Then, you can perform operations on OSS objects in the same manner as you perform operations on local files, which serves data sharing purposes.
ossfs is implemented based on the filesystem in userspace (fuse), and can only be run on machines that support fuse. OSS provides installation packages for Ubuntu and CentOS. To run the packages in other environments, use source code to build the required program.
ossfs is supported in the internal network and the Internet. To improve the speed and stability of access, we recommend that you use an internal endpoint within the internal network environment.
ossfs is built based on S3FS and incorporates all S3FS features, including:
- Supports most features of the POSIX file system. For example, you can upload and download objects and folders, and set user permissions.
- Uses multipart upload and resumable upload of OSS to upload objects by default.
- Supports MD5 verification to ensure data integrity.
- You cannot attach a bucket of the Archive storage class.
- ossfs is unsuitable for scenarios that require highly concurrent read and write operations.
- If you use ossfs to edit an object in OSS, the object is uploaded again.
- The performance of metadata-related operations such as list directory is compromised because you must remotely access the OSS server.
- Errors may occur if you rename an object or a folder. Operation failures may cause data inconsistency between OSS and local disks.
- If an OSS bucket is attached to multiple clients, you are responsible for maintaining data consistency. We recommend that you schedule the time when your users are able to use objects, which prevents multiple clients from writing data to the same object at the same time.
- Hard links are not supported.
- If the upload of an object is unexpectedly interrupted before the object is uploaded, the uploaded content is stored as parts in an OSS bucket. To avoid additional storage fees, we recommend that you use the following methods to delete these parts if you no longer use these parts.