Compartilhe partes de samba montadas em outro compartilhamento

1

Eu tenho um diretório que é compartilhado via samba. Agora eu montei um compartilhamento em outro computador para um diretório que está dentro desse compartilhamento. O problema é que esse compartilhamento montado aparece como diretório vazio ao acessar o compartilhamento.

Alguém sabe por que isso acontece ou como alguém poderia acessar corretamente o compartilhamento de outro computador como se fosse parte de outro compartilhamento?

Exemplo adicionado:

Se isso ajudar, veja como esse cenário pode ser criado:

# on host assume that we are 'user1'
# assume that we use '[homes]' in 'smb.conf' so our home directory is shared
mkdir -p d1/d2 && cd d1
# assume that there is a 'host2'
# with a share named 'share2' and a user 'user2'
sudo mount.cifs -o username=user2 '//host2/share2' d2
# we check and see that it works and files from 'share2' are visible
ls d2
# now we try to use this share from anywhere, for example locally
echo "ls d1/d2" | smbclient '\localhost\user1' -U user1
# now we will only see an empty directory
    
por Joseph Dalton 13.06.2016 / 14:10

1 resposta

0

Depois de investigar, parece que fui afetado por um bug, conforme descrito aqui: link

Parece que há um bug quando "resharing" com o samba: Os diretórios são mostrados como arquivos por causa de um bug. O Samba usa a contagem de inode para determinar isso e o cifs define isso como zero. Então, todos os diretórios aparecem como arquivos de tamanho zero.

A solução proposta é recompilar um módulo do kernel para o samba, mas não acho que seja uma solução viável. Já se passaram 3 anos desde a resposta, talvez alguém conheça uma solução melhor agora. O bug original foi marcado como WILL_NOT_FIX em cifs e no samba, nada parece ter acontecido.

Se alguém tiver uma solução melhor, eu gostaria de ouvi-la.

    
por 15.06.2016 / 16:56