Rsync는 모든 백업 도구를 초기화합니다. 어떤 디렉터리를 수동으로 차단할 수 있습니까?

인용문


Rsync는 원격 셸을 통해 두 위치 간에 파일과 폴더를 동기화할 수 있는 빠르고 일반적인 명령행 유틸리티입니다.
Rsync를 사용하면 데이터를 미러링하고 증분 백업을 생성하며 시스템 간에 파일을 복사할 수 있습니다.데이터를 복사할 때, 파일 이름이나 위치에 따라 하나 이상의 파일이나 디렉터리를 제외해야 할 수도 있습니다.
본고에서, 우리는rsync를 사용하여 파일과 디렉터리를 제거하는 방법을 보여 줍니다.

준비 작업


먼저 rsync의 작업 절차와 사용 방법을 간단하게 말해 보세요.
다음 예시에서 우리는 rsync의 -a 옵션을 사용합니다. 이것은 동기화 디렉터리로 돌아가 특수 장치와 블록 장치를 전송하고 기호 링크, 수정 시간, 그룹, 소유권과 권한을 보존합니다.
파일이나 디렉터리를 제외할 때 원본 디렉터리에 대한 상대적인 경로를 사용해야 합니다.
제외할 파일과 디렉토리를 지정할 수 있는 두 가지 옵션이 있습니다.
  • 명령줄에서 Cexclude 옵션을 사용합니다.
  • 파일에서 Cexclude-from 옵션을 사용합니다.
  • 특정 파일 제외


    특정 파일을 제외하려면 Cexclude 옵션에 파일의 상대 경로를 전달합니다.다음 예제에서 파일 src_directory/file.txt는 전송되지 않습니다.
    
    rsync -a --exclude 'file.txt' src_directory/ dst_directory/
    디렉터리 내용을 제외하지만 디렉터리 자체를 배제하지 않으려면 dir1 대신 dir1/*를 사용하십시오.
    
    rsync -a --exclude 'dir1/*' src_directory/ dst_directory/
     
    여러 파일 또는 디렉토리 제외
    여러 파일이나 디렉토리를 제외하려면 여러 Cexclude 옵션을 지정하십시오.
    
    rsync -a --exclude 'file1.txt' --exclude 'dir1/*' --exclude 
    'dir2' src_directory/ dst_directory/
    개별 --exclude 옵션을 사용하려는 경우 제외할 파일과 디렉토리를 {} 로 나열하고 다음과 같이 쉼표로 구분할 수 있습니다.
    
    rsync -a --exclude={'file1.txt','dir1/*','dir2'} src_directory/ dst_directory/
    제외할 파일과/또는 디렉터리의 수가 많으면, exclude는 여러 옵션을 사용하지 않고 파일에서 제외할 파일과 디렉터리를 사용할 수 있습니다.파일을 이 exclude-from 옵션에 전달하기만 하면 됩니다.
    다음 명령은 위의 명령과 동일합니다.
    
    rsync -a --exclude-from='exclude-file.txt' src_directory/ dst_directory/
    exclude-file.txt에 저장:
    
    file1.txt
    dir1/*
    dir2

    정규 모드에 따라 여러 파일이나 디렉터리를 배제합니다


    rsync를 사용하면 파일이나 디렉터리 이름과 일치하는 패턴에 따라 파일과 디렉터리를 제거할 수 있습니다.
    예를 들어, 모든 파일.jpg을 제외하려면 다음을 실행합니다.
    
    rsync -a --exclude '*.jpg*' src_directory/ dst_directory/
    특정 패턴과 일치하는 파일과 디렉터리를 제외한 모든 파일과 디렉터리는 어렵지 않습니다.만약 당신이 모든 다른 파일과 디렉터리를 배제한다고 가정한다면.jpg 마지막 파일을 제외합니다.
    한 가지 선택은 다음 명령을 사용하는 것입니다.
    
    rsync -a -m --include='*.jpg' --include='*/' --exclude='*' src_directory/ dst_directory/
    여러 include/exclude 옵션을 사용하면 첫 번째 일치 규칙이 적용됩니다.매개변수 의미:
  • --include='*.jpg' 우선, 우리는 모든 것을 포함한다.jpg 파일.
  • --include='*/' 그리고 모든 디렉터리를 insrc_에 포함합니다directory 디렉터리에 있습니다.이 rsync 없이 복사만 할 수 있습니다 *.jpg 최고급 디렉터리의 파일입니다.
  • -m 빈 디렉터리 삭제
  • 다른 선택은find 명령의 출력을rsync에 전달하는 것입니다.
    
    find src_directory/ -name "*.jpg" -printf %P\\0\
    | rsync -a --files-from=- src_directory/ dst_director
    매개변수 의미:
  • -printf %P\\0\
    로부터 src_directory/파일 경로에서 삭제합니다.
  • --files-from=-는 표준 입력된 파일만 포함됨을 나타냅니다(find 명령에서 전달된 파일).
  • 만약 첫 번째 방식이 통제하기 어렵다면, 이find지령이 한 선별은 학생들에게 훨씬 우호적일 것이다.

    마지막에 쓰다


    rsync는 수량이 사용되면 scp를 대체하여 로컬에서 서버, 서버 사이, 디렉터리와 파일을 동기화하는 표준 도구가 되어야 합니다.
    이 부분에서 Rsync가 모든 백업 도구를 초기화하는 것에 관해서 어떤 디렉터리를 수동으로 차단할 수 있습니까?이 글은 여기까지입니다. 더 많은 관련 Rsync 수동 차단 디렉터리 내용은 저희 이전의 글을 검색하거나 아래의 관련 글을 계속 훑어보십시오. 앞으로 많은 응원 부탁드립니다!

    좋은 웹페이지 즐겨찾기