The SMB3 POSIX
Extension Specification
A protocol specification enabling POSIX-compliant systems to interoperate correctly with SMB3 servers. Case sensitivity, Unix permissions, hard links and symlinks over the most secure SMB dialect.
What the Extensions Define
The extensions address protocol-level gaps that prevent POSIX applications from behaving correctly over SMB3 mounts.
Return stat / statfs information
FilePosixInformation and FileFsPosixInformation return inode numbers, link counts and mode
POSIX Mode Bits and File Type Information
Full mode bit support (0777) and handling of special file types.
Hard Links & Symlinks
Hard-links support and symbolic link creation and client side traversal.
Case-Sensitive Paths
Files opened with the POSIX Create Context, receive true case-sensitive resolution on the server.
No Illegal Characters
Windows-reserved characters are fully supported on POSIX handles.
POSIX Byte-Range Locks
Advisory fcntl(2)-style locks.
Negotiate Context
SMB3_POSIX_EXTENSIONS_AVAILABLE negotiated during the SMB2 NEGOTIATE exchange for version agreement.
POSIX delete and rename behaviour
POSIX rename(2) ignores other POSIX opens, delete(2) allows direct namespace removal.
Implementation Status
Current POSIX extension support across clients and server implementations.
| Component | Role | POSIX Support | Since Version | Notes |
|---|---|---|---|---|
| Samba | Server | Supported | Samba 4.22 | Full support, enabled by default in 4.23 |
| Linux kernel (cifs.ko) | Client | Supported | 5.8 (exp.) / 6.13+ | Mount with vers=3.1.1,posix |
| ksmbd | Server | Supported | Linux 5.15 | In-kernel SMB3 server |
| Windows Server | Server | Not Supported | — | Uses proprietary semantics |
| CIFS UNIX Extensions | Legacy | Deprecated | — | Use SMB3 POSIX Extensions instead |
Try the Extensions Today
Linux 6.13+ and a Samba server are all you need.
Kernel Requirement
Ensure you run Linux 6.13 or later. POSIX extension support was substantially improved in this release.
Mount with POSIX
Use the posix option.
Server-Side Config
Enabled by default on Samba (smb3 unix extensions = yes)
Run xfstests
Validate behaviour using the Linux xfstests suite, link on the documentation page.