I have a public SMB share mainly as a media dump. Everyone can read and write, without any auth - as intended. However, if I copy files via SSH (as a regular user, not the samba user), these files are of course owned by that user and thus not writable for the samba user - so I can’t touch these files via SMB.
My config looks like this
[public]
path = /path/to/samba/public
guest ok = yes
writeable = yes
browseable = yes
create mask = 0664
directory mask = 0775
force user = sambapub
force group = users
I can fix the permissions by simply chown/chmod all files, but that’s not really a solution.
Untested Evil Method, Not Really Recommended: format the backing file system in vfat, which has no notion of file ownership.
[This comment has been deleted by an automated system]
Add the sticky group bit to the directory so that new files are created with the group of the directory.
chmod 2775 /path/to/samba/public``` Now any new file will have group "users".
Samba is a pipe of sorts… those settings only apply to files created using that pipe.
SSH is a different pipe, with different configuration. I think you need to modify the umask of the user connecting via ssh and/or add them to a samba group.
My hacky way was to make sure group ID on each computer matches and have the directory writable by the group. I also make sure user ID is different so I can identify who created it. It was easy for me because I only have to worry about 2 computers plus my NAS.