Virtual File System Modules
From SambaWiki
The Virtual File System (VFS) in Samba enable administrators to extend the functionality of Samba through modules.
VFS Modules Provided by Samba
Samba provides the following VFS modules:
Name of the VFS Module | Feature Provided by the Module |
---|---|
acl_tdb | Stores Windows Access Control Lists (ACL) in a Trivial Database (TDB) file. |
acl_xattr | Enables to use fine-granular Windows ACL. |
aio_fork | Implements asynchronous I/O in a VFS module. |
aio_linux | Implements asynchronous I/O in a VFS module using Linux kernel AIO calls. |
aio_pthread | Implements asynchronous I/O in a VFS using a pthread pool.
|
audit | Logs client operations. |
btrfs | On Btrfs file systems, this module enables enhanced server-side copy, compression and snapshots.
|
cacheprime | Prime the Kernel file data cache. |
cap | Provides support for Columbia Appletalk Protocol (CAP) encoded file names. |
catia | Translates illegal characters in file names used by the Catia application.
|
commit | Synchronizes cached data to disk after the size reached a specified size. |
crossrename | Enables server-side rename operations across file system boundaries. |
default_quota | Enables you to set a default quota. |
dirsort | Sors directory content alphabetically before sending the entries to the client. |
extd_audit | Records selected VFS operations. |
fake_perms | Enables read-only profiles by sending faked permissions to the Windows client. |
fileid | Generates file_id structs with unique device ID values for cluster setups.
|
fruit | Provides enhanced compatibility with Apple Server Message Block (SMB) clients and interoperability with Netatalk 3 Apple Filing Protocol (AFP) file servers. |
full_audit | Records selected client operations. |
gpfs | Enables General Parallel File System (GPFS) specific extensions, such as ACL. |
linux_xfs_sgid | Enables a workaround for an old Linux XFS bug. |
media_harmony | Enable multiple Avid clients to share a network drive.
|
netatalk | Hides .AppleDouble files generated by AFP clients.
|
offline | Flags all files on a share as offline. |
prealloc | Preallocate matching files to a predetermined size. |
preopen | Assists applications that want to read numberes files in sequence with a very strict latency requirement. |
readahead | Pre-loads the Kernel buffer cache. |
readonly | On a writeable share, the module sets the share read-only for a specific time period. |
recycle | Moves files to a temporary directory rather than deleting them immediately. |
shadow_copy | Enables Windows clients to use browse snapshots as shadow copies. |
shadow_copy2 | Enables Windows clients to use browse snapshots as shadow copies. Contains enhanced functionality compared to the shadow_copy module.
|
shell_snap | Runs shell scripts to create or delete a snapshot when a client issues the operation using the File Server Remote VSS Protocol (FSRVP). |
snapper | Exposes snapshots managed by Snapper to Windows clients as shadow copies.
|
streams_depot | Enables storing Alternative Data Streams (ADS) in a central directory. |
streams_xattr | Enables ADS support. |
syncops | Ensures that meta data operations on a file system are performed synchronously. |
time_audit | Logs system calls that take longer than a defined time. |
tsmsm | Handles offline files with Tivoli Storage Manager Space Management .
|
unityed_media | Enable multiple Avid clients to share a network drive. This is an enhanced version of the media_harmony module.
|
worm | Provides Write Once Read Many (WORM) functionality. |
xattr_tdb | Stores extended attributes in a TDB file. |
Developing VFS Modules
For details about developing Samba VFS modules, see:
- Writing a Samba VFS Module (Samba 4.0 and later)
- The new version of Writing a Samba VFS (Samba 3.6 and earlier)