link simbólico no linux

0

Estou copiando o código de um servidor usando rsync over ssh :

rsync -avzhe ssh --progress  root@ecash-staging:/to/path/file /path/

Existe um diretório de link simbólico que não pode ser copiado, mas eu preciso do conteúdo do destino do link.

1) Como posso copiar esse diretório e, em seguida, fazer um arquivo tar e fazer o download ou copiar na máquina local do servidor?

2) Ou podemos baixar esse diretório diretamente para a máquina local? Se sim, então como?

    
por Waqas Rana 18.10.2016 / 15:16

1 resposta

1

Dê uma olhada em man rsync . A seção relevante aqui é:

SYMBOLIC LINKS
       Three  basic  behaviors  are  possible when rsync encounters a symbolic
       link in the source directory.

       By default, symbolic links are  not  transferred  at  all.   A  message
       "skipping non-regular" file is emitted for any symlinks that exist.

       If --links is specified, then symlinks are recreated with the same tar‐
       get on the destination.  Note that --archive implies --links.

       If --copy-links is specified, then symlinks are "collapsed" by  copying
       their referent, rather than the symlink.

Então, tudo que você precisa é adicionar a opção --copy-links :

rsync -avzhe ssh --progress --copy-links root@ecash-staging:/to/path/file /path/
    
por 18.10.2016 / 15:28