Eu tenho um problema em que os bits de permissão não estão sendo impostos em um compartilhamento de samba usando um cliente Linux. Eu tenho o samba configurado no servidor para forçar um certo usuário, grupo e bits de permissão, e isso funciona conforme o esperado até eu tocar no arquivo ou ele se tornar o destino do redirecionamento de entrada / saída.
Aqui está o que está acontecendo:
user@linuxbox:~-->ls -l ~/archive/foo.txt
ls: cannot access /home/user/archive/foo.txt: No such file or directory
user@linuxbox:~-->touch ~/archive/foo.txt
user@linuxbox:~-->ls -l ~/archive/foo.txt
-rw-rw-r-- 1 archive archive 0 2010-09-13 20:29 /home/user/archive/foo.txt
user@linuxbox:~-->touch ~/archive/foo.txt
user@linuxbox:~-->ls -l ~/archive/foo.txt
-rwxrwxrwx 1 archive archive 0 2010-09-13 20:30 /home/user/archive/foo.txt
Observe que quando toco no arquivo existente, seus bits de permissão são 0777. Eles deveriam ser 0664 como quando foram criados. Como posso aplicar 0664 no arquivo existente?
Eu tenho a versão 3.0.24 no servidor e a versão 3.4.7 no cliente. Aqui está o meu smb.conf:
[global]
interfaces = egiga0
unix charset = UTF8
workgroup = workgroup
netbios name = foo
server string = Foo
security = USER
map to guest = bad user
host msdfs = no
encrypt passwords = yes
[archive]
comment = File Archive
path = /home/archive
force user = archive
force group = archive
read only = yes
write list = @archive
guest ok = yes
create mask = 0
force create mode = 0664
security mask = 0
force security mode = 0664
directory mask = 0
force directory mode = 0775
directory security mask = 0
force directory security mode = 0775
linux
permissions
samba
Jonathon Watney
fonte
fonte
touch
ing parece estar em um sistema * nix ... é o sistema que você está criando o arquivo no Windows? ou você está criando o arquivo a partir de um sistema Windows? ou é este nix * a * nix via samba (caso em que isso não e samba NFS)Respostas:
As permissões do samba funcionam apenas nos clientes de rede SMB (ou seja, Windows). Se você deseja aplicar isso no servidor (e em qualquer cliente NFS), é necessário definir o valor em todos os diretórios.
primeiro corrija os arquivos que estão lá:
então imponha isso com o grupo sticky bit
Isso não é infalível, mas resolve 99% desse tipo de problema.
Atenciosamente DaveF
Resultado na minha caixa Solaris:
fonte