Virtual File System Modules: Difference between revisions
From SambaWiki
Mmuehlfeld (talk | contribs) (Added descriptions for all VFS modules shipped in the samba suite.) |
m (fix Btrfs VFS module description) |
||
Line 35: | Line 35: | ||
|- |
|- |
||
|[[Using the btrfs VFS Module|btrfs]] |
|[[Using the btrfs VFS Module|btrfs]] |
||
|On <code>Btrfs</code> file systems, this module enables |
|On <code>Btrfs</code> file systems, this module enables [https://wiki.samba.org/index.php/Server-Side_Copy#Btrfs_Enhanced_Server-Side_Copy_Offload enhanced server-side copy], compression and snapshots. |
||
|- |
|- |
||
|[[Using the cacheprime VFS Module|cacheprime]] |
|[[Using the cacheprime VFS Module|cacheprime]] |
Latest revision as of 11:48, 18 May 2018
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)