Por que outros usuários não conseguem ver os arquivos que eu publico no compartilhamento do Samba?

0

Eu corro um servidor Amahi que usa samba e greyhole para compartilhamento de arquivos. Quando copio um arquivo para um dos compartilhamentos, outros não podem vê-lo. Se outro usuário adicionar um arquivo a um compartilhamento, ele terá êxito, mas, após a atualização, não poderá mais ver o arquivo. O arquivo está no compartilhamento e eu posso ver isso.

Todos os arquivos criados há mais de 4 a 6 semanas podem ser vistos por qualquer pessoa. Não consegui determinar o que poderia ter mudado. Última reinicialização foi de 60 dias atrás

Isso parece um problema relacionado ao samba, mas não consigo identificá-lo.

Coisas que eu verifiquei: Permissões do Linux - todos os arquivos (/ var / hda / files / tv /) são de propriedade do meu usuário amahi / linux (não root) e do grupo de usuários. Todos os usuários estão no mesmo grupo. Esse grupo tem permissões de RW. Permissões do Samba - o compartilhamento usa permissões de usuários que os usuários têm RW. criar máscara é 0755

Corri o greyhole fsck contra o caminho da TV sem alteração

Aqui estão as permissões atuais de dois arquivos:

    Failed file ( as root)
-rwxrwxr-x 1 gmartin users 205775332 May  4 20:48 /var/hda/files/drives/drive1/gh/TV/SomeShow/SomeShow-S01E02.avi

Successful file (as wdtv)
-rwxrwxr-x 1 gmartin users 257642672 Apr 13 21:55 /var/hda/files/drives/Drive6/gh/TV/SomeShow/SomeShow-S01E05.avi

Informação: Fedora Core 23 Amahi 9.0.0-1 Core 7.0.0-1 samba v 4.3.12 greyhole 0.10.6

Clientes: Win10 (1703), WDTV Live

    
por uSlackr 07.09.2017 / 03:26

1 resposta

1

O Greyhole trabalha movendo o arquivo real que você adiciona aos seus compartilhamentos em outro (s) drive (s). Assim, uma vez que Greyhole mova o arquivo e deixe um link simbólico em /var/hda/files/ , se seus usuários não tiverem as permissões necessárias para acessar o arquivo que está agora em outra unidade, esses usuários poderão ler o symlink, mas não seu alvo, e assim o arquivo será escondido pelo Samba.

Faça login como um usuário problemático (usando o SSH; use sudo , se necessário) e vá em um link simbólico em /var/hda/files/ que esse usuário não vê no compartilhamento. Observe o alvo desse link simbólico e tente acessar esse arquivo. Você provavelmente vai achar que você não pode. Você provavelmente precisará chown/chmod -R de todas as suas unidades de dados (aquelas que ainda estão montadas em /var/hda/drives ?)

Atualização: Eu adicionei uma página no wiki sobre isso, com exemplos: link

Atualização 2: Tente isso:

$ chown -R gb:users /var/hda/files/drives/*
$ find /var/hda/files/drives/* -type d -exec chmod 775 "{}" \; # Permissions for directories
$ find /var/hda/files/drives/* -type f -exec chmod 664 "{}" \; # Permissions for files

Altere gb:users , 775 e 664 conforme necessário.

    
por 07.09.2017 / 14:30