Solaris

솔라리스 백업(ufsdump , ufsrestore)

알 수 없는 사용자 2008. 3. 9.
728x90
데이터 백업 명령어인 ufsdump , vxdump의 사용법에 대해 알아보고,
mt명령어를 사용하여 원하는 파일시스템을 seek하고,
restore 하는 방법에 대해 알아보자.
또한 실전 예제를 통해 비상시 어떻게 백업을 원활히 수행할지 알아보자

백업장치 : SpectraLogic 10000S
Media : AIT2 Type
============================================================================


ufsdump명령어 사용법 ufsdump(1)

ufsdump는 파일시스템 단위의 백업에 적합하다.

[Syntax]

/usr/sbin/ufsdump [option] [argument] files_to_dump

ufsdump는 마그네틱 테잎이나 디스켓 또는 디스크에 지정된 모든 파일을 백업한다.
(일반적으로 백업후 변경된 파일시스템이나 파일을 백업한다.)
ufsdump를 실행하면 대화식으로 진행된다.



옵션에 대해 알아보자

0 - 9 : dump level을 지정한다.0은 전체를 덤프하고, 9는 최상으로 덤프한다.
2는 월요일날짜를 덤프하고, 4는 수요일자를 덤프한다.
레벨3은 레벨2가 수행되고 난뒤 변경되거나 첨가된 모든 파일을 덤프한다.
a : archive형태로 미디어에 저장한다.
f : device를 지정한다.
l : 테잎의 끝에 도달햇을때 다른 테잎드라이브를 삽입하기 위해 2분간 오프라인
또는 대기상태로 만든다.
n : 터미널에 메시지를 출력한다.
u : /etc/dumpfiles 파일에 덤프한 기록을 남긴다.
c : 카트리지 테잎에 백업한다.
o : 덤프가 완료되거나 미디어의 끝에 도달했을때 테잎을 되감기 하고,
offline으로 표시한다.
s : 사이즈를 지정하여 원하는 만큼 백업을 테잎볼륨을 사용하고,
다음 테잎 볼륨을 기다린다.

옵션은 위 말고도 몇가지가 더 있다. 자세한 것은 맨페이지를 참고하기 바란다.
argument는 테잎 디바이스를 지정한다.
files_to_dump는 덤프 할 파일 시스템이나 디렉토리를 지정하면된다.

그러면 이제 실제로 사용해보자

/data1 파일시스템을 전체백업을 해보자. 백어할 디바이스 번호가 1이라고 가정한다.
# ufsdump 0ulf /dev/rmt/1n /data1

그러면 디바이스에 대해 좀더 알아보자

/dev/rmt에서 1n을 보자.링크로 되어 있을것이다.
1n -> ../../devices/sbus@45,0/QLGC,isp@1,10000/st@3,0:n

그럼 1만 한번보자
1 -> ../../devices/sbus@45,0/QLGC,isp@1,10000/st@3,0:

위에서 뭐가 다른지 아시겟나요?
"n"이 있고 없고의 차이이다.
이것은 별것 아닌것 같지만 엄청난 차이가 있다.
"n"은 norewind의 약어로 여러 파일시스템을 백업할경우(이것은 대부분의 백업에서
종종 사용된다.) 각 파일시스템을 구분해주는 (EOF mark라 한다.)옵션이다.
EOF는 mt 명령어에서 다시 거론될 것이다.

만일 백업 디바이스 지정시 그냥 1만 지정한다면 여러 파일시스템 백업시 하나의 파일
시스템을 백어하고 테잎은 앞으로 다시 감아져서 다른 파일 시스템을 백업하고,
또 다시 감아져서 다른 파일시스템을 백업하고.....이런식으로 된다는 것이죠
즉. 계속 overwritter되죠..
자~이해 되죠

그럼 ufsdump받은 것을 restore해 보자
물론 이것도 맨페이지가 있으므로 참고하기 바란다.


ufsrestore 명령어 사용법 ufsrestore(1M)

[Syntax]

ufsrestore options [ arguments ] [ filename ]

옵션을 알아보자

a : archive 파일로 덤프된 내용을 복구시
f : restore 할 device를 지정한다.
i : interactive하게 restore시
r : 백업된 전체내용을 모두 restore할 경우
t : 백업테잎의 내용을 보고자 할때
v : verbose모드로 진행한다.


그럼 실제로 해보자
백업 테잎의 내용만 확인해보자.이 명령은 파일 하나하나를 모두 나열해 준다.
# ufsrestore tvf /dev/rmt/1n

백업 데이터중 일부만 restore해보자.(/data1 중 /data1/mydata만 restore해 보자)
# ufsrestore xvf /dev/rmt/1n ./data1/mydata

이제 까지 순조롭게 왔다.
그럼 이제 네트웍으로 백업을 해보자
방법은 간단하다. 지정된 디바이스의 앞에 해당 호스트네임이나 IP를 기록해주면 된다.
(단.호스트네임으로 접근시 /etc/hosts 파일에 해당 호스트가 기록되어 있어야 한다.)
아래는 네트웍호스트의 /dev/rmt/1n 디바이스로 현재 시스템의 /export/home 을
full백업 받는 것이다.

# ufsdump 0uf 네트웍호스트:/dev/rmt/1n /export/home

위에서 네트웍호스트 다음의 디바이스는 네트웍 호스트에 설정된 디바이스이다.
728x90

댓글