Como eu estava dizendo nos comentários abaixo da sua pergunta, para definir corretamente as permissões através do Samba você teria que configurar o sistema umask para 0007.
Não tenho certeza se esse é o "jeito certo" de configurar o Samba. O que eu notei é que as permissões que eu estava dando aos compartilhamentos únicos no arquivo conf do Samba não eram as mesmas que aquelas criadas ao criar um arquivo no compartilhamento de samba. Basicamente, do sistema umask, o samba estava removendo os bits de permissões e de fato estava criando arquivos sob outras permissões.
O que eu fiz (há muito tempo atrás) foi ajustar o sistema umask.
Em / etc / profile Eu adicionei
umask 0007
meu arquivo samba conf é algo assim:
#
# Samba config file
#
# To use with umask 0007
[global]
server string = %h server (Samba, Ubuntu)
map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
deadtime = 45
socket options = TCP_NODELAY IPTOS_THROUGHPUT
dns proxy = No
panic action = /usr/share/samba/panic-action %d
idmap config * : range =
idmap config * : backend = tdb
map acl inherit = Yes
csc policy = documents
# interfaces = 10.8.0.0/24 tun0 # do you want to serve your Samba over a dedicated network?
# hosts allow = 10.8.0.0/24 # these rows are what I'd use in the OpenVPN
[User]
path = /home/samba/user
valid users = user
force group = user
read only = No
directory mask = 0770
force directory mode = 0770
create mask = 0660
force create mode = 0660
write cache size = 2621440
veto oplock files = /*.tmp/
# in this case, only the user User can r/w his own share.
# What if we have a group with more users?
[Group]
path = /home/samba/group
valid users = @group
force group = group
read only = No
directory mask = 0770
force directory mode = 0770
create mask = 0660
force create mode = 0660
write cache size = 2621440
veto oplock files = /*.tmp/
Se os compartilhamentos tiverem um arquivo de documento, vá para csc policy = documents Eu usei isso na configuração GLOBAL.
Pode haver o caso em que uma pasta compartilhada contém um arquivo executável (principalmente em sistemas Windows, como um aplicativo portátil). Nesse caso, você pode usar csc policy = programs na configuração de compartilhamento.