I want to create a Public folder that has full RW access. The problem with my configuration is that Windows users have no issues as guests (they can RW and Delete), my Ubuntu client can't do the same. We can only write and read, but not create or delete.
Here is the my smb.conf from my server:
[global]
workgroup = WORKGROUP
netbios name = FILESERVER
server string = TurnKey FileServer
os level = 20
security = user
map to guest = Bad Password
passdb backend = tdbsam
null passwords = yes
admin users = root
encrypt passwords = true
obey pam restrictions = yes
pam password change = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
add user script = /usr/sbin/useradd -m '%u' -g users -G users
delete user script = /usr/sbin/userdel -r '%u'
add group script = /usr/sbin/groupadd '%g'
delete group script = /usr/sbin/groupdel '%g'
add user to group script = /usr/sbin/usermod -G '%g' '%u'
guest account = nobody
syslog = 0
log file = /var/log/samba/samba.log
max log size = 1000
wins support = yes
dns proxy = no
socket options = TCP_NODELAY
panic action = /usr/share/samba/panic-action %d
[homes]
comment = Home Directory
browseable = no
read only = no
valid users = %S
[storage]
create mask = 0777
directory mask = 0777
browseable = yes
comment = Public Share
writeable = yes
public = yes
path = /srv/storage
The following FSTAB entry doesn't yield full R/W access to the share.
//192.168.0.5/storage /media/myname/TK-Public/ cifs rw 0 0
This doesn't work either
//192.168.0.5/storage /media/myname/TK-Public/ cifs rw,guest,iocharset=utf8,file_mode=0777,dir_mode=0777,noperm 0 0
Using the following location in Nemo/Nautilus w/o the Share being mounted does work:
smb://192.168.0.5/storage/
Extra info. I just noticed that if I copy a file to the share after mounting, my Ubuntu client immediately make "nobody" be the owner, and the group "no group" has read and write, with everyone else as read-only.
What am I doing wrong?
Turns out that I need to add a local (client) UID to the mount line in FSTAB to make this work. I arrived at this via sheer brute force:
You are almost there. Open FSTAB by using:
In the last line ( or on of the last lines) place:
*** (this is all one long line)
Ctrl-X to close, Y to save and Enter to seal the deal.
Now reboot by:
And you should have full control of the network share on your Linux device!
CIFS does not generally have any concept of user and group, so mounting a cifs share will default to showing user and group as 'nobody':
Since you are not 'nobody' Linux will not let you write to anything that doesn't have 0777 permission unless you use sudo. To fix this, add uid=mylogin,gid=mygroup to fstab and it will make the share appear as if it is your own directory:
You now have full control without the need for sudo.
This not not actually changing anything on the server, since the server is not enforcing anything. It is telling Linux to pretend that you are the owner and give you unrestricted access.
I had this problem and it was because the user of the share did not own it. I fixed it with "sudo chown {username}:{groupname} /{share}/{path}" after that I could move and delete files.