rsync --link-dest não funciona no samba?

2

Estou tentando enredar o comportamento rsync ao usar --link-dest como meu backup pessoal.

Minha configuração é um Mac Pro com uma partição de dados separada, que eu quero fazer backup em um servidor Ubuntu. Tentar isso com a máquina do tempo não funcionou até agora (último problema: tamanho máximo de destino incorreto de 46 GB).

Eu tenho a coisa toda trabalhando com rsync sobre o ssh e tudo bem para mim.

A última coisa que tentei foi fazer backups incrementais usando a opção --link-dest . Eu consegui trabalhar via ssh (201_10_08 é um backup completo)

rsync -avh --delete --link-dest=/mnt/backup_data/2014_10_08 /Volumes/Data/ user@host:/mnt/backup_data/2014_10_09

Isso funciona muito bem com o caminho --link-dest apontando para a pasta no sistema de destino.

Agora eu tentei simplificar isso definindo backup_data como uma unidade Samba e montando-a a partir do Mac (atualizei o rsync para 3.0.9 no mac devido ao desempenho lento em relação ao samba da versão antiga).

Resultado: Apesar da mesma data de modificação, proprietário e grupo dos arquivos na unidade montada (conforme verificado por stat ), os backups subsequentes geram backups completos e nenhum link físico no sistema de destino

Eu tentei --link-dest=/mnt/backup_data/old (resultado: o caminho não foi encontrado, o que faz sentido já que o acesso é somente para o compartilhamento smb não o sistema alvo inteiro) assim como --link-dest=/Volume/mount/old (com caminho via smb mount no mac, resultado: sem links, backup completo).

Eu posso trabalhar com a solução que resolvi, mas gostaria de entender o comportamento.

Alguem tem ideias?

    
por user247309 09.10.2014 / 12:24

1 resposta

2

IIRC a versão do rsync fornecida com o OS X não é a mais atual e você pode estar se deparando com o seguinte problema:

Note that rsync versions prior to 2.6.1 had a bug that could prevent --link-dest from working properly for a non-super-user when -o was specified (or implied by -a). You can work-around this bug by avoiding the -o option when sending to an old rsync.

    
por 09.10.2014 / 12:47