Linux_백업과 복구

lil·2023년 2월 11일
0

LinuxServerAdmin

목록 보기
8/8

백업:

원본이 손상되거나 잃어버릴 경우를 대비하여 원본 자료를 미리 복사하는 과정.
풀백업: 선택된 폴더의 DATA를 모두 백업하는 방식
증분백업: 선택된 폴더의 Full 백업 이후 변경/추가된 Data만 백업하는 방
차등백업: 선택된 폴더의 Full 백업 이후 변경/추가된 Data를 모두 포함하여 백업하는 방식

(1) 로컬 백업

tar CMD
	[참고] 상대경로/절대경로(tar CMD 순수한 영역)
	# cd /home 
	# tar cvzf /backup/home.tar.gz .
	# tar tvzf /backup/home.tar.gz
	# cd /home 
	# tar xvzf /backup/home.tar.gz
	
* 전체 백업(Full Backup) + 차등 백업(Differential Backup)
	# cd /home 
	(전체백업)# tar -g /backup/backup.time -cvzf /backup/full.tar.gz .
	(증분백업)# tar -g /backup/backup.time -cvzf /backup/inc1.tar.gz .
	
	# cd /home 
	(전체복원)# tar -g /backup/backup.time -xvzf /backup/full.tar.gz
	(증분복원)# tar -g /backup/backup.time -xvzf /backup/inc1.tar.gz
		
* 디렉토리 마이그레이션(ex: /test1/* -> /test2/*)
	# cd /test1
	# tar cvf - . | (cd /test2 ; tar xvf -)
	
* 운영체제 전체백업(tar --exclude CMD)
	# mkdir -p /RootBackup 
	# time tar cvzf /RootBackup/full.tar.gz \
	--exclude=/proc \
	--exclude=/dev/shm \
	--exclude=/tmp \
	--exclude=/media \
	--exclude=/sys \
	--exclude=/run \
	--exclude=/mnt \
	--exclude=/proc \
	--exclude=/RootBackup \
	--absolute-name /
	

(2) 원격 백업

rsync CMD
(ㄱ) rsync 명령어 수행
	(L  -> L)
		# rsync -a --delete /test1/ /test2
	(L -> R) 
		# rsync -az --delete -e ssh /test1/ IP:/test2
	(R -> L) 
		# rsync -az --delete -e ssh IP:/test2/ /test1
	
	[참고] $HOME/.bashrc
		# vi ~/.bashrc
		alias RS='rsync -az --delete -e ssh'
		alias LS='rsync -a --delete'
		# . ~/.bashrc
		
(ㄴ) rsync 서버 구축
	(rsync Server)
		# yum install rsync-daemon rsysnc
		# vi /etc/rsyncd.conf
			-----------------------------------
			uid=nobody
			gid=nobody
			use chroot=yes
			max connections=5
			timeout=60

			[Backup]
			comment=Rsync Backup Server
			path=/backup1
			read only=no 
			-----------------------------------	
		# systemctl enable --now rsyncd.socket
	(rsync Client)
		# rsync -avz --delete -e ssh IP::Backup /mirror

0개의 댓글