· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
rdiff-backup


1. 개요

강력한 증분 백업 솔루션. 공간을 적게 사용하면서 변경 사항을 유지할 수 있고. 오래된 백업 삭제를 쉽게 할 수 있다. rsync에 여러 스크립트를 사용해 타임머신을 구현하던 방법보다 훨씬 쉽게 백업 및 복구가 가능하다.

2. 사용법

  • '데이터 백업'과 '오래된 백업 데이터 삭제'는 동시에 할 수 없다.
    • ex: 백업 및 오래된(30일 초과한 파일 삭제) 하려면?
      • 잘못된 예
        rdiff-backup --remove-older-than 30D 원본경로/ 사본경로/
        
        • 위와 같이 쓸 수 없음. --remove-dolder-than을 사용할 때는 경로 인수를 하나만 받을 수 있기 때문.
        • 백업과 오래된 데이터 삭제는 별도로 실행해야 함.
      • 제대로 된 예
        rdiff-backup 원본경로/ 사본경로/
        rdiff-backup --remove-older-than 30D 사본경로/
        
        • 나눠서 실행해야 함.

2.1. 기본 백업 방법

로컬에서 사용시
rdiff-backup 원본경로/ 사본경로/

원격 백업시
rdiff-backup ID@HOSTNAME::/원본경로 사본경로/
scp와 비슷하지만 호스트네임(혹은 IP)와 디렉토리 경로를 구분하는 :가 두 개임에 주의.

사본경로에서 파일 목록을 확인해보면 rdiff-backup-data 가 추가 되어 있다. 여기에 추가되거나 삭제되는 파일/디렉토리에 대한 정보 및 파일이 보관된다.

2.2. 백업 목록 확인

rdiff-backup -l 사본경로/
-l 옵션을 주면 rdiff-backup-data에서 정보를 읽어와 백업 목록을 보여줌. 여기서 보이는 시간을 활용해 복구할 수 있을..까?(아직 안 해봄).

2.3. 복구

가장 최근 백업된 상태로 복원하려면 사본경로 그대로 복사하면 된다. 그러나 rdiff-backup을 사용하는 사람이라면 최신 백업본 복구를 원하는게 아닐터(rsync를 쓰면 되니).

-r, --restore-as-of restore_time 옵션을 사용해 일자별 복구가 가능하다.
rdiff-backup -r TIME_FORMATS 사본경로/ 복구할경로/



3. 백업 구조

원본 파일과 디렉토리를 그대로 복사 한 뒤, 변경 사항을 rdiff-backup-data 디렉토리에 보관한다.

4. 주의사항

서버 - 클라이언트 버전이 너무 크게 차이나면 백업실패하는 경우가 있었다(테스트 당시 클라이언트 1.2.8, 서버측 1.0.x 시 원격 백업이 되질 않았음). 가능하다면 서버 - 클라이언트의 버전을 맞춰주자.

5. 리눅스 - 윈도우 간 파일 백업

아쉽게도, 서로 다른 파일 이름 인코딩을 지원 못한다. [http]참조 (rsync는 --iconv 옵션을 이용하면 된다.) 백업이 되긴 하지만 한글 파일명이 엉망으로 깨지는 것을 볼 수 있다.

해결 방법으로, 원본 리눅스 서버에서 원본과 복제(하드링크)를 만들어 비교한 뒤, 윈도우에서 복제를 rsync로 끌어가는 방법으로 끌어가는 방법이 있겠다. 더 나은 방법이 있으면 추가 바람.

ID
Password
Join
A truly wise man never plays leapfrog with a Unicorn.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2012-03-28 09:44:07
Processing time 0.0055 sec