estranheza rsync xattr entre mac e linux?

8

Olá pessoal - Estou usando o rsync para fazer backup do meu mac em um servidor de arquivos executando o linux e vejo o seguinte erro:

rsync -e ssh -vaxE --delete --ignore-errors 192.168.1.3:/bkup/mac/Users/dave/ /Users/dave/Desktop/dave 
[email protected]'s password: 
rsync: on remote machine: --extended-attributes: unknown option
rsync error: syntax or usage error (code 1) at main.c(1441) [server=3.0.5]
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at /SourceCache/rsync/rsync-37.3/rsync/io.c(452) [receiver=2.6.9]

... erro suficientemente claro, no entanto -v mostra o seguinte para as duas máquinas:

MAC (cliente / local):

rsync  version 2.6.9  protocol version 29
...
Capabilities: 64-bit files, socketpairs, hard links, symlinks, batchfiles,
              inplace, IPv6, 64-bit system inums, 64-bit internal inums

LINUX (servidor / remoto):

rsync  version 3.0.5  protocol version 30
...
Capabilities:
    64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes

... então, considerando que a caixa do Linux diz que suporta xattrs, por que lança uma reclamação sobre atributos estendidos sendo solicitados pelo Mac?

FWIW, o Mac está executando o OS X 10.6.1 e o servidor está executando o Ubuntu 2.6.28-15-generic - ambas as máquinas estão executando com pacotes padrão atualizados (nenhum sabor especial de rsync instalado em ambos os lados além do que é fornecido por padrão) .

Qualquer insight apreciado :-)

Dave Carpeneto
fonte

Respostas:

7

Os sinalizadores -E / --extended-attribute não faziam parte da distribuição oficial do rsync e eram um patch incluído pela Apple no momento em que o lançamento oficial do rsync não os suportava.

Agora, o rsync verson 3.x reimplementou o suporte estendido a atributos de uma maneira incompatível com o patch da Apple. De acordo com a página de manual do rsync para 3.0.6 , o suporte a atributos estendidos agora é feito com os argumentos --xattrs ou -X. Parece não aceitar o sinalizador --extended-attribute.

Você não precisará especificar -E ou instalar uma versão atualizada do rsync localmente que suporte a nova implementação.

Morven
fonte
Obrigado! Depois de fazer alguns trabalhos de casa da sua resposta parece que MacPorts fornece uma versão rsync decente, e se eu montar um volume HFS + no servidor Linux, então tudo deve estar OK ... Obrigado por apontar a raiz do problema :-)
Dave Carpeneto