File permissions issue on OS X El Capitan and SMB share. Ask Question. And permissions are still wrong: The user:execute bit is still set. Something has changed at a low level I think. Version of Samba that supports SMB2 and enabling vfsfruit on the share. This will add support to Apple's AAPL extension for SMB2 which should work better. Most filesystems, however, are left without any specific knowledge of MAC due to support for single-label filesystems, in which VFS uses the label of the mount point for every vnode in the filesystem, avoiding the need for filesystem-specific storage (but at the cost of not allowing different labels for different tiles).
vfs_fruit: Enhanced OS X and Netatalk interoperability
Read vfs_fruit man page on Linux:
$ man 8 vfs_fruit
NAME
vfs_fruit - Enhanced OS X and Netatalk interoperabilitySYNOPSIS
- •xattr- use a xattr, requires a filesystem with large xattr support and a file IO API compatible with xattrs, this boils down to Solaris and derived platforms and ZFS
- Controls where the OS X metadata stream is stored:
- •stream- pass the stream on to the next module in the VFS stack
- •none (default)- no cross protocol locking
- •private (default)- store characters as encoded by the OS X client: mapped to the Unicode private range
- A global option whether to enable Apple's SMB2+ extension codenamed AAPL. Defaultyes. This extension enhances several deficiencies when connecting from Macs:
- •readdir_attr:aapl_finder_info = true | false
- Whether support for querying and modifying the UNIX mode of directory entries via NFS ACEs is enabled, defaultyes.
fruit:veto_appledouble = yes | noNote:this option only applies whenfruit:resourceis set tofile(the default).Whenfruit:resourceis set tofile, vfs_fruit may create ._ AppleDouble files. This options controls whether these ._ AppleDouble files are vetoed which prevents the client from accessing them.Vetoing ._ files may break some applications, eg extracting Mac ZIP archives from Mac clients failes, because they contain ._ files. Setting this option to false will fix this, but the abstraction leak of exposing the internally created ._ files may have other unknown side effects.The default isyes.fruit:copyfile = yes | noWhether to enable OS X specific copychunk ioctl that requests a copy of a whole file along with all attached metadata.WARNING: the copyfile request is blocking the client while the server does the copy.. The default is
no.fruit:posix_rename = yes | noWhether to enable POSIX directory rename behaviour for OS X clients. Without this, directories can't be renamed if any client has any file inside it (recursive!) open.The default isyes.EXAMPLES
AUTHOR
The original Samba software and related utilities were created by Andrew Tridgell. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed.Linux man pages generated by: SysTutorialsLinux Man Pages Copyright Respective Owners. Site Copyright © SysTutorials. All Rights Reserved.
vfs_fruit requires 'ea support = yes'.
Be careful when mixing shares with and without vfs_fruit. OS X clients negotiate SMB2 AAPL protocol extensions on the first tcon, so mixing shares with and without fruit will globally disable AAPL if the first tcon is without fruit.
Having shares with ADS support enabled for OS X client is worthwhile because it resembles the behaviour of Apple's own SMB server implementation and it avoids certain severe performance degradations caused by Samba's case sensitivity semantics.
The OS X metadata and resource fork stream can be stored in a way compatible with Netatalk 3 by settingfruit:resource = fileandfruit:metadata = netatalk.
OS X maps NTFS illegal characters to the Unicode private range in SMB requests. By settingfruit:encoding = native, all mapped characters are converted to native ASCII characters.
Finally, share access modes are optionally checked against Netatalk AFP sharing modes by settingfruit:locking = netatalk.
This module is not stackable other then described in this manpage.
OPTIONS
fruit:resource = [ file | xattr | stream ]
Controls where the OS X resource fork is stored.Due to a spelling bug in all Samba versions older then 4.6.0, this option can also be given asfruit:ressource, ie with two s.
Settings:
fruit:locking = [ netatalk | none ]