comportamento rsync para links -l / - diferentes para push vs. pull

0

Encontrei um comportamento inesperado usando o rsync para copiar arquivos de contas de usuários de uma máquina Ubuntu 16.04 para uma máquina Ubuntu 18.04, dependendo se os arquivos foram "empurrados" do antigo para o novo ou "puxados".

Por exemplo, considere um diretório em% old contendo apenas dois links:

%old> ls -l /home/User/somedir/test/
link1->/media/adir
link2->../../adir
Copiar do antigo para o novo com 'rsync -a' resulta em links não idênticos:
%old> rsync --version
rsync  version 3.1.1  protocol version 31
%old> rsync -a /home/User/somedir/test/ new::User/somedir/test/
%new> ls -l /home/User/somedir/test/
link1->media/adir
link2->../adir
Observe que partes iniciais dos caminhos estão faltando. No entanto, indo pelo caminho oposto:
%new> rsync --version
rsync  version 3.1.2  protocol version 31
%new> rsync -a old::User/somedir/test/ /home/User/somedir/test/ new::User/somedir/test/
%new> ls -l /home/User/somedir/test/
link1->/media/adir
link2->../../adir

Isso é de fato racional?

Um follow-up: é possível escrever sobre os (1000s) links quebrados com versões corretas?

    
por quagmire 06.10.2018 / 16:52

0 respostas