링크가 포함된 폴더의 내용을 복사하는 올바른 방법은 무엇입니까

링크가 포함된 폴더의 내용을 복사하는 올바른 방법은 무엇입니까

/usr/hdp/2.6.0.3-8/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

/usr/hdp/2.6.0.3-8/zookeeper 아래의 모든 내용을 다른 머신(예: master02 머신)에 복사하고 싶습니다.

/usr/hdp/2.6.0.3-8/zookeeper 아래의 내용을 현재 컴퓨터에서 대상 컴퓨터로 복사하는 올바른 명령은 무엇입니까(모든 링크와 권한 저장)

답변1

당신이 찾을 수 있는 -a일반적인 옵션은 다음과 같습니다 rsync.

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

이렇게 하면 필요한 것이 제공됩니다.

    -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

자세한 정보 표시 옵션을 추가하면 -v다음을 얻을 수 있습니다.

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

-delete대상 디렉터리를 정리하려면 옵션을 추가해야 할 수도 있습니다 .

        --delete                delete extraneous files from dest dirs

관련 정보