usando atributo estendido no samba

2

Eu tenho um servidor samba e uma mistura de clientes Mac e Windows. Nesses clientes eu tenho um aplicativo que requer conhecer o caminho completo dos arquivos no servidor samba. Para o servidor samba, estamos usando vfs_fruit e vfs_streams_xattr que podem manipular atributos estendidos.

Eu estou querendo saber se é possível de alguma forma colocar o caminho real de um arquivo no servidor samba como um atributo estendido e deixar os clientes lerem esse atributo estendido.

Eu tentei implementar isso alterando o código fonte do samba, mas sem sucesso. Alguma ajuda seria apreciada.

    
por Brexiteer 18.11.2016 / 04:40

1 resposta

0

Não sei por que você gostaria de fazer isso, mas você pode armazenar o caminho completo do servidor dos arquivos em um "fluxo de dados alternativo NTFS" que seria legível pelos clientes Samba. O Samba "falsifica" os fluxos de dados alternativos do NTFS, armazenando-os como atributos estendidos.

Seus dados seriam apenas o caminho, então streams_xattr seria OK. O atributo estendido precisa ser chamado de user.DosStream."ADS-NAME" conforme visto no link

Escrever um script para adicionar periodicamente o atributo a arquivos existentes com setfattr seria bastante fácil.

Para criá-lo em "tempo real" seria mais complicado, mas modificar o código-fonte do Samba não é necessário, você só precisa executar um script para criar / modificar o atributo estendido quando os arquivos são criados / movidos. Dê uma olhada em incron para isso, há um exemplo em link

    
por 24.11.2016 / 17:55