I've got an OpenIndiana server running ZFS that is shared using a
nobody user and group. I don't fully understand Solaris ACL permissions, but I do know Linux style permissions. The client is Windows 8 and the server is OpenIndiana is oi_148.
I'm failing to work out how to make write permission work correctly for the Windows client. It is able to make new files, but can not modify files created by the shell in OpenIndiana.
When a file (
"local file") is created locally as the user
nobody in bash, and another file (
"smb file") created remotely via SMB (as
nobody also), they are quite different in permissions:
# ls -V -rw-r--r-- 1 nobody nobody 0 Dec 2 12:24 local file owner@:rw-p--aARWcCos:-------:allow group@:r-----a-R-c--s:-------:allow everyone@:r-----a-R-c--s:-------:allow -rwx------+ 1 nobody nobody 0 Dec 2 12:24 smb file user:nobody:rwxpdDaARWcCos:-------:allow group:2147483648:rwxpdDaARWcCos:-------:allow
In bash, I'm able to write to
smb file, but vice versa, the Windows client is not able to write to
local file. This is confusing to me because it appears that it should allow the SMB client to write to
local file, because
nobody is the owner and it has a
w in the ACL.
sharesmb setting is is fairly boring, although I'm hoping there can something to set in here similar to a umask:
How can I make these two work together and have a symmetrical permission system, where both SMB and the local user produce the same permissions?
Is there some sort of ACL that can set at the root of the file system to allow all files to be created in a similar manner?