rsync 명령을 사용하고 차분·완전 백업을 사용하면
4844 단어 rsync
일리야그룹 OSS Advent Calendar 2018의 11일째를 쓸 수 있게 허락해 주세요.
나는 회사 내부 시스템의 설계, 구축, 운용 등 업무를 책임진다.
이번에는 운용에 없어서는 안 될 백업,'rsync 명령(과cron)만 통해 차분·완전 백업'을 얻는 방법에 대해 소개한다.
개시하다
사전 요구 사항:
이번에는 rsync를 이용해서(이번에는 2018/12/11시 CentOS 7.5에 설치할 수 있는 rsync version 3.1.2 protocol version 31을 사용했다.)
rsync
rsync는 오래된 원격 파일 디렉터리를 동기화하는 도구입니다.
전용 프로토콜을 통해 고속 동기화를 실현할 수 있고 SSH를 통해 동기화를 할 수 있으며 동기화에 관해서는 매우 중요한 도구이다.
참조:
전체 백업
rsync -a --delete src/ dest/
- a 옵션은 "압축 파일 모드"로 복사하는 옵션으로 디렉터리나 파일을 이 메타데이터를 포함하는 방식으로 동기화하는 옵션입니다.-- delete는 삭제된 파일이 있을 때 동기화 대상에서 파일을 삭제하는 옵션입니다.
참고:
rsync는 경로를 지정할 때/path/to/또는/path/to를 지정하느냐에 따라 동작을 변경합니다.전자는/path/to 디렉터리의 모든 내용을 대상으로 하고 후자는/path/to 디렉터리를 대상으로 한다.만약 이 지정을 잘못하면, 차분 백업을 사용할 때 디렉터리 구조가 일치하지 않아 문제가 발생할 수 있습니다. (실제로는 끼워 넣은 것입니다.)
차등 백업
rsync -a --delete --link-dest=/path/link_dest/ /path/src/ /path/dest/
거의 전체 백업과 마찬가지로 --link-dest
옵션이 추가되었습니다.이 옵션을 선택하면 수정되지 않은 파일이 삭제됩니다dest/와/path/dest/공유 (하드 링크를 통해 파일 복사).
디스크 소비는/path/link-dest에서 백업된 시간에서 명령을 실행하는 시간까지만 변경된 파일입니다.
일반적으로 복구 차등 백업 시 복구 작업 필요
이 방법으로 차분 백업을 할 때 파일 시스템에서/path/src/와/path/dest/는 완전한 디렉터리 구조를 유지하기 때문에 차분 백업을 참고할 때 특별한 조작이 필요 없고 간단한 파일 조작을 통해 참고할 수 있습니다.
백업 활용
cron에서 정기적으로 실행을 통해 자동으로 백업을 가져옵니다.
실제 스크립트는 기존 백업과 알림 등을 삭제하기 위한 것으로, 더욱 복잡한 내용을 활용하기 위해 이번 설명을 중심으로 게재된다.
crontab (그림)
/etc/crontab
# 完全バックアップ
30 4 * * 6 root COMMAND=/commands/full_backup.sh
# 差分バックアップ
30 4 * * 1-5 root COMMAND=/commands/incremental_backup.sh
/commands/full_backup.sh (그림)/commands/full_backup.sh
#!/bin/bash
SRC=/var/my-system/
SSH_TO=user@hostname
DEST=/backup/full/$(date "+%Y%m%d-%H%M%S")
rsync -a --delete -e ssh $SRC $SSH_TO:$DEST
/commands/incremental_backup.sh (그림)/commands/incremental_backup.sh
#!/bin/bash
SRC=/var/my-system/
SSH_TO=user@hostname
DEST=/backup/incremental/$(date "+%Y%m%d-%H%M%S")
BASE=`ssh $SSH_TO "ls /backup/full/ | tail -n 1"`
rsync -a --delete -e ssh --link-dest=$BASE $SRC $SSH_TO:$DEST
SSH를 통해 동기화하려면 -e ssh
를 지정합니다.또한 자동 실행 시 암호 인증을 사용할 수 없기 때문에 키 등록을 미리 해야 한다.총결산
실제 백업 솔루션에 추가할 필요는 없지만 백업을 자주 수행하고 싶습니다.그럼에도 불구하고 디스크 용량을 절약하고 싶습니다.
이러한 상황에서 rsync를 사용하는 백업 방법을 소개했습니다.여러분을 도울 수 있다면 다행입니다.
Reference
이 문제에 관하여(rsync 명령을 사용하고 차분·완전 백업을 사용하면), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hi-naoya/items/a120104538e679211185텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)