[unix] tar 를 통한 tape 백업
Linux에서 Tape 장비로 백업하기
1) 특정 디렉토리 백업하기
[root@server root]# cd /
[root@server /]# tar cpf /dev/st0 label=“full-backup created on `date`.” directory / home
tar cpf
c 는 새로운 파일을 생성,
p 는 파일들의 속성을 유지,
f 는 바로 뒤따르는 파일 또는 장치에 기록
/dev/st0
Linux 에서 SCSI Tape 드라이브 장치명
일반적으로 하나의 Tape 드라이브를 사용
–label=” “
백업세트에 파일이름을 지정할 수 없으므로, label 옵션을 사용하여 저장파일자체에 추가정보를 기입
`date` 값의 정보( 현재 시스템의 날짜와 시간) 를 기록한다.
–directory /
백업을 하기 전에, / 디렉토리로 이동하라는 의미
home
풀백업 명령어 전에 / 디렉토리로 반드시 이동
그러므로, 파일시스템상의 /home 디렉토리를 백업하라는 의미
2) 시스템 전체 풀 백업하기
[root@server root]# cd /
[root@server /]# tar cMpf /dev/st0 -label=“full-backup created on `date`.” directory / –exclude=proc –exclude=mnt –exclude=*/lost+found .
tar cMpf
풀 백업하는 경우, 하나의 테이프 미디어로는 부족한 경우가 많다.
그래서, -M (–multi-volume) 옵션을 사용하여 여러 미디어에 저장한다.
–exclude
백업하지 않을 디렉토리를 지정하여 백업에 포함하지 않는다. 대표적으로 /proc /mnt lost+found 디렉토리가 있으며, 관리자가 서버에 따라 다르게 지정해야만 한다.
.
제일 마지막의 . 은 현재 디렉토리와 그 아래의 모든 디렉토리를 백업한다는 의미로써, 여기서는 시스템 전체를 백업한다는 의미를 가진다.
3) 테이프 드라이브 조종하기
[root@server /]# mt f /dev/st0 rewind
[root@server /]# mt f /dev/st0 offline
rewind
테이프를 되감기 할 수 있다. 그러나, 최근의 테이프 드라이버들은 자동으로 되감는 동작이 항상 실행되므로, 필요없는 명령어이다.
offline
테이프들은 이제 드라이버상의 eject 버튼을 누르면 꺼낼 수 있다. 필요없는 명령어이다.
4) 백업의 오류 검사
[root@server root]# cd /
[root@server /]# tar dvf /dev/st0
※ 주의사항
1) Tape 백업시 압축하기
tar로 저장된 파일의 용량을 줄이기 위해 z 옵션을 이용해 백업을 압축할 수 있다. 그러나 이 옵션을 이용할 경우 문제를 일으킬 수 있다. 왜냐하면 압축파일 중 1비트라도 오류가 있을 경우에는 압축된 나머지 모든 데이터의 복구가 불가능하기 때문이다. 따라서 가급적이면 백업때 z 옵션을 이용한 압축 백업을 사용하지 않는 것이 좋다.
2) 명령어 실행시 디렉토리 이동에 관하여…
백업을 실행하기 전이나, 복구하기 전에는 반드시 “cd /” 명령어로 시스템 루트 디렉토리로 이동하여야만 합니다. 그렇지 않으면, 정상적인 백업이 이루어지지도 않을 뿐만 아니라, 백업의 복구도 실행되지 않습니다.
5) 백업된 Tape로 복구하기
[root@server root]# cd /
[root@server /]# tar xpf /dev/st0
tar xpf
x 는 tar 파일로부터 파일을 추출,
p 는 파일들의 속성을 유지,
f 는 바로 뒤따르는 파일 또는 장치에서 가져오기
6) 백업된 Tape로 일부파일 부분복구하기
[root@server root]# cd /
[root@server /]# tar dvf /dev/st0
full-backup created on 2004. 02. 03. (화) 10:28:54 KST.
etc/
etc/passwd
etc/shadow
[root@server /]# tar xpf /dev/st0 etc/passwd
먼저 테이프에 어떤 파일들이 백업되어 있는 지를 확인한다. “tar dvf /dev/st0”
파일명과 경로를 확인하였으면, 특정파일을 지정하여 복구시킨다.
제일 앞에 / 기호가 붙지 않는 것에 주의한다.
※ 주의사항
1) 명령어 실행시 디렉토리 이동에 관하여…
복구 명령어를 실행하기 전에는 반드시 백업파일이 풀릴 디렉토리로 이동하여야 합니다. (백업된 파일의 경로도 고려하여야 한다.) 대부분의 경우, 즉 “cd /” 명령어로 시스템 루트 디렉토리로 이동하여야만 합니다. 그렇지 않으면, 백업에서 복구된 파일이 전혀 엉뚱한 디렉토리로 이동하여서 복구될 수 있습니다.