rsync para cifs montar, mas preservar permissões

2

Estou fazendo o backup de um servidor linux para um compartilhamento do windows. Atualmente estou montando o compartilhamento de janelas com cifs e usando o rsync para backups incrementais. As permissões de arquivo e a propriedade não estão sendo preservadas, como deve ser esperado após a leitura de este documento do samba :

The core CIFS protocol does not provide unix ownership information or mode for files and directories. Because of this, files and directories will generally appear to be owned by whatever values the uid= or gid= options are set, and will have permissions set to the default file_mode and dir_mode for the mount.

Como posso alcançar meu objetivo de preservar permissões de arquivos unix ao gravar em um compartilhamento do Windows? Existe outro sistema de arquivos de rede que me permita fazer isso?

Obrigado.

    
por getWeberForStackExchange 22.06.2011 / 20:21

2 respostas

1

O protocolo CIFS tem uma extensão para adicionar suporte para permissões de arquivo POSIX (não tenho certeza sobre ACLs), que já faz parte do Samba. Se você instalar o Services for Unix (ou o que a Microsoft chamar agora), ele também deverá adicionar esse recurso ao Windows. Além disso, o SfU vem com o servidor e o cliente para o NFSv3, que foi projetado para sistemas de arquivos Unix.

    
por 23.06.2011 / 17:20
3

Editar : Como a Grawity aponta MS tem um pacote adicional para isso. Leia sua resposta primeiro.

Não é apenas o protocolo de compartilhamento de arquivos de rede que não salva esse tipo de dados de permissão, o próprio sistema de arquivos do Windows não tem locais para esses dados serem * . A única maneira de fazer isso seria adicionar algum tipo de camada no topo das janelas para ter um sistema de arquivos e um protocolo de rede com esses recursos. Isso pode ser uma máquina virtual com uma imagem de disco, ou uma mágica maluca com o cygwin, ou drivers especiais do Windows, mas tudo vai exigir alguma medida de trabalho.

Se o seu caso de uso for realmente simples e você gostar de backups, considere usar tar em vez disso. Ou rsnap . Estes podem fazer objetos de arquivo único de seus dados com todos os dados de permissão de arquivo embutidos, então você pode compactá-los e enviá-los através da rede para qualquer sistema de arquivos que você gosta. Existem até maneiras de lidar com atualizações de dados incrementais. Essa pode ser uma maneira pouco sofisticada de resolver seu problema.

*, a menos que você adicione o conjunto de ferramentas Serviços para Unix, que configura uma camada de comparabilidade e armazena os dados extras de permissão ... somwhere.

    
por 22.06.2011 / 20:30