qual é a abordagem correta para copiar o conteúdo da pasta que inclui links

0

temos as seguintes pastas / links / arquivos em /usr/hdp/2.6.0.3-8/pasta zookeeper

-rw-r--r--. 1 root root 794542 Apr  1  2017 zookeeper-3.4.6.2.6.0.3-8.jar
drwxr-xr-x. 6 root root   4096 Mar 28  2018 doc
drwxr-xr-x. 3 root root     17 Mar 28  2018 etc
drwxr-xr-x. 2 root root   4096 Mar 28  2018 lib
drwxr-xr-x. 3 root root     17 Mar 28  2018 man
lrwxrwxrwx. 1 root root     29 Mar 28  2018 zookeeper.jar -> zookeeper-3.4.6.2.6.0.3-8.jar
lrwxrwxrwx. 1 root root     26 Mar 28  2018 conf -> /etc/zookeeper/2.6.0.3-8/0
drwxr-xr-x. 2 root root   4096 Oct 16 17:07 bin
[root@master01 zookeeper]# pwd
/usr/hdp/2.6.0.3-8/zookeeper

queremos copiar todo o conteúdo sob /usr/hdp/2.6.0.3-8/zookeeper para outra máquina - digamos - master02 machine

qual é o comando correto para copiar o conteúdo em /usr/hdp/2.6.0.3-8/zookeeper, da máquina atual para a máquina de destino (salvar todos os links e permissões)

    
por yael 22.10.2018 / 11:50

1 resposta

1

Provavelmente você está procurando a opção -a muito usada de rsync :

    -a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)

Que fornecerá o que você precisa:

    -r, --recursive             recurse into directories
    -l, --links                 copy symlinks as symlinks
    -p, --perms                 preserve permissions
    -t, --times                 preserve modification times
    -g, --group                 preserve group
    -o, --owner                 preserve owner (super-user only)
    -D                          same as --devices --specials
        --devices               preserve device files (super-user only)
        --specials              preserve special files

Adicione a opção -v para verbosidade e você terá:

rsync -av /usr/hdp/2.6.0.3-8/zookeeper/ master02:/usr/hdp/2.6.0.3-8/zookeeper

Você pode adicionar a opção -delete ao diretório de destino de limpeza:

        --delete                delete extraneous files from dest dirs
    
por 24.10.2018 / 10:45