os/Linux

Backup rsync

C/H 2018. 7. 24. 11:38


Installation

# Ubuntu
sudo apt-get install rsync

# CentOs
yum install rsync

Backup (내부 백업)

# Directory1 에서 Directory2로 백업

rsync -av --delete /Directory1/ /Directory2/

Options

-a
재귀 (디렉토리로 반복), 링크 (심볼릭 링크로 심볼릭 링크 복사), perms (사용 권한 유지), 시간 (수정 시간 보존), 그룹 (그룹 보존), 소유자 (소유자 보존), 장치 파일 보존 및 특수 보존 파일.
(단 전송시 타임스탬프나 permission을 보존하지 않는다)
-u
목적지 파일이 변경되었을 시 덮어쓰지 않는다.
-d
디렉토리 구조만 복사한다. 파일은 제외
-v
verbose : 자세한 정보. rsync가 백업하는 내용을 정확하게 볼 수 있다.
-a
archive mode. -r, -t(타입스탬프 보존), -l (심볼릭 링크 보존), -p(permission 보존), -g(g그룹 보존), -o(소유자 보존 - root 만 가능), -D(device, special 파일 보존)과 동일하다. 일반적으로 rsync 로 복제시 -a 옵션에 -z 옵션을 추가하면 충분하다.
-z
데이타 압축
-h
사람이 읽을 수 있는 출력 형식 및 숫자 형식
–delete
Directory1에없는 파일을 Directory2에있는 모든 파일을 삭제하도록 rsync에 알린다.
--progress
전송 진행 내역 보기

External Backup (외부 백업)

# ssh를 이용해 로컬 /Directory1/ 폴더를 원격(192.168.235.137)서버 username계정 /Directory2/ 로 백업한다.
rsync -av –delete -e ssh /Directory1/ username@192.168.235.137:/Directory2/
username@192.168.235.137`s password:

# 22번 포트외 다른 포트를 이용할 경우
rsync -av –delete -e 'ssh -p 12345' /Directory1/ username@192.168.235.137:/Directory2/
username@192.168.235.137`s password:

Using Crontab Backup (자동 백업)

crontab -e

# 매일 22:00분에 rsync 실행
0 22 * * * rsync -av --delete /Directory1/ /Directory2/

Using Zip Backup

# /Directory1/ 을 /pathname/archive.zip으로 압축 후 /pathname/ 폴더를 /Directory2/로 백업
zip /pathname/archive.zip /Directory1/ && rsync -av --delete /pathname/ /Directory2/


반응형

'os > Linux' 카테고리의 다른 글

linux inode remove file, folder  (0) 2019.05.29
입력대기 없이 지연시간과 명령어를 한번에 실행하기  (0) 2018.08.07
Linux Movie to gif  (0) 2018.06.27
Linux Youtube Movie Download  (0) 2018.06.26
동시접속 한계 조정  (0) 2018.01.09