Archil’s FUSE-based file system is designed to be fully compatible with all applications which run on a local, POSIX file system. If you discover behavior that you believe deviates from POSIX, please contact us by emailing support@archil.com, and we will address the underlying issue. We are continuously testing our adherence to POSIX, using the same test suite as the XFS file systems.Documentation Index
Fetch the complete documentation index at: https://docs.archil.com/llms.txt
Use this file to discover all available pages before exploring further.
POSIX compatibility details
Archil disks are designed to be broadly compatible with POSIX semantics, even when the underlying data sources are not POSIX compatible, like Amazon S3. When needed, the Archil storage service emulates file operations on data sources. Today, Archil supports the following POSIX features:- All read and write operations, including random writes and appends
- Symbolic links (
ln -s) - Hard Links (
ln) - Renames, including directory renames (
mv) - POSIX locks, including
flockandfcntl - File modes
- File ownership
- Extended attributes (with the
--enable-xattrsflag)
- File ACLs
- Files greater than 20 GiB in size
- Directories with more than 20,000 entries
- Directories with a depth that exceeds the data source’s key limit (1024 characters in Amazon S3)
- renameat2 flags, such as RENAME_WHITEOUT
- Anonymous files (unlink after opening)
Application support
As a result of our broad compatibility with POSIX, Archil is compatible with all applications which run on a local, POSIX file system. This includes:- Version control systems, such as Git (including large repositories,
git clone,git checkout, andgit status), Mercurial, and Subversion - Databases, such as PostgreSQL, MySQL, and SQLite
- Build tools and compilers, such as Make, CMake, GCC, and Clang
- Archive and compression tools, such as
tar,gzip,zip, andrsync - Editors and IDEs, such as Vim, Emacs, and VS Code
- Containers — mount in a container via a bind mount from the host or FUSE inside the container