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?