http://blogs.sun.com/erwann/entry/zfs_on_the_desktop_zfs
http://wikis.sun.com/display/OpenSolarisInfo/How+to+Create+a+ZFS+File+System+Snapshot
스냅샷이 뭔지는 virtual box같은 것을 써보면 알 것이다. 고스트 이미지를 뜨지 않고, 현재 상태를 저장할 수 있다. 그 상태를 저장하는 것도 1초면 된다(1초도 많이 적어준거임;; 눈깜짝할 새에 된다). 원리는? 현재 하드에 저장된 상태를 딱 끊어서 앞으로 일어나는 차이점만 기록하는 것이다… 하지만?... virtualization이 없이도 snapshot을 쓸 수 있다면 정말로 편할 것이다 :D 요즘은 그게 가능하다.
$ mount
로 현재 마운트를 보자.
뭔가 이상하다.
/ on rpool/ROOT/opensolaris read/write/setuid/devices/dev=2d90002 on Thu Jan 1 09:00:00 1970
엉?
$ df –h
이것도 이상하다.
Filesystem Size Used Avail Use% Mounted on
rpool/ROOT/opensolaris
910G 2.3G 908G 1% /
라고 주장한다.
흠흠…
/dev/sda1 이런 장치가 아니라니, 수상하지 않은가?
그건 왜냐하면… rpool/ROOT/opensolaris는 스냅샷이기 때문이다.
시스템 전체 스냅샷이나 찍어보자...
그 전에... 스냅샷에 대해 조금 알아보긴 해야 할텐데...
이런 식으로 나온다. rpool에 있다고 해서 무조건 스냅샷은 아니다...;;
이제 스냅샷을 진짜로, 찍어보자.
$ zfs snapshot rpool/ROOT/opensolaris@20081221
이렇게. 20081221은 찍을 스냅샷 이름이다.
$ zfs list –t snapshot
으로 찍힌 스냅샷을 확인해보자. 혹은... 현존하는 스냅샷이라고 해야 할까?
NAME USED AVAIL REFER MOUNTPOINT
rpool/ROOT/opensolaris@install 131M - 2.21G -
rpool/ROOT/opensolaris@20081221 70.5K - 2.24G -
아직 설정한 것이 얼마 안 되어서 용량이 작다. :D /etc를 좀 깨작깨작 건드렸을 뿐이다.
여기서 시간이 약간 흘러서, 시스템 설정이 정말 "약간" 바뀌었다. 전에 찍은 200812212 스냅샷은 없애되, 현재의 설정이 바뀐 상태를 유지하고 싶긴 했다. 어떻게 해야 하지?
zfs destroy 명령어로 하면 다행해도, 현 상태가 유지되면서 스냅샷이 제거 되었다. 휴우… 이런 실험은 초반에 해볼 필요가 있다. 괜히, destory하면, 스냅샷을 찍은 그 상태까지 “roll back”된다면 나중에 치명적인 낭패를 볼 수도 있는 그런 사항이다.
이제 파괴 실험을 해보자. 스냅샷을 우선 찍어둔다.
시스템 전체 스냅샷을 미리 찍어놓고, perl라이브러리가 있는 디렉토리를 rm -rf로 테러하자.
복구하면 다시 perl이 다시 살아나는 것은 확인할 수 있다.
이제... 부분적인 파괴와 복구가 되는지도 테스트해보자.
새로운 부분을... "create"를 해보자.
root@docu:/export/home# ls
pressit force
root@docu:/export/home# zfs create rpool/export/home/data
root@docu:/export/home# ls
data pressit force
root@docu:/export/home#
이제 data안에 음악을 넣고
/usr/perl5는 rm -rf로 통째 테러를 했다.
빈 data를 스냅샷찍고 거기 음악을 넣었다.
root@docu:/# zfs rollback rpool/ROOT/opensolaris@20081221
음악은 살아있다 (!)
그렇다. 독립해 나오는 것이다. 우왕 ㅋ 굳 ㅋ
이런 식의 create 명령어면
DB, 홈페이지, 메일 을 따로따로 관리하여
스냅샷을 따로따로 찍고, 롤백하고 할 수 있는거다.
이상으로 zfs 스냅샷 기능 테스트가 끝났다.
http://wikis.sun.com/display/OpenSolarisInfo/How+to+Create+a+ZFS+File+System+Snapshot
스냅샷이 뭔지는 virtual box같은 것을 써보면 알 것이다. 고스트 이미지를 뜨지 않고, 현재 상태를 저장할 수 있다. 그 상태를 저장하는 것도 1초면 된다(1초도 많이 적어준거임;; 눈깜짝할 새에 된다). 원리는? 현재 하드에 저장된 상태를 딱 끊어서 앞으로 일어나는 차이점만 기록하는 것이다… 하지만?... virtualization이 없이도 snapshot을 쓸 수 있다면 정말로 편할 것이다 :D 요즘은 그게 가능하다.
$ mount
로 현재 마운트를 보자.
뭔가 이상하다.
/ on rpool/ROOT/opensolaris read/write/setuid/devices/dev=2d90002 on Thu Jan 1 09:00:00 1970
엉?
$ df –h
이것도 이상하다.
Filesystem Size Used Avail Use% Mounted on
rpool/ROOT/opensolaris
910G 2.3G 908G 1% /
라고 주장한다.
흠흠…
/dev/sda1 이런 장치가 아니라니, 수상하지 않은가?
그건 왜냐하면… rpool/ROOT/opensolaris는 스냅샷이기 때문이다.
시스템 전체 스냅샷이나 찍어보자...
그 전에... 스냅샷에 대해 조금 알아보긴 해야 할텐데...
$ zfs list
NAME USED AVAIL REFER MOUNTPOINT
rpool 6.48G 907G 72K /rpool
rpool/ROOT 2.37G 907G 18K legacy
rpool/ROOT/opensolaris 2.37G 907G 2.24G /
rpool/dump 2.00G 907G 2.00G -
rpool/export 120M 907G 19K /export
rpool/export/home 120M 907G 29.5K /export/home
이런 식으로 나온다. rpool에 있다고 해서 무조건 스냅샷은 아니다...;;
이제 스냅샷을 진짜로, 찍어보자.
$ zfs snapshot rpool/ROOT/opensolaris@20081221
이렇게. 20081221은 찍을 스냅샷 이름이다.
$ zfs list –t snapshot
으로 찍힌 스냅샷을 확인해보자. 혹은... 현존하는 스냅샷이라고 해야 할까?
NAME USED AVAIL REFER MOUNTPOINT
rpool/ROOT/opensolaris@install 131M - 2.21G -
rpool/ROOT/opensolaris@20081221 70.5K - 2.24G -
아직 설정한 것이 얼마 안 되어서 용량이 작다. :D /etc를 좀 깨작깨작 건드렸을 뿐이다.
여기서 시간이 약간 흘러서, 시스템 설정이 정말 "약간" 바뀌었다. 전에 찍은 200812212 스냅샷은 없애되, 현재의 설정이 바뀐 상태를 유지하고 싶긴 했다. 어떻게 해야 하지?
zfs destroy 명령어로 하면 다행해도, 현 상태가 유지되면서 스냅샷이 제거 되었다. 휴우… 이런 실험은 초반에 해볼 필요가 있다. 괜히, destory하면, 스냅샷을 찍은 그 상태까지 “roll back”된다면 나중에 치명적인 낭패를 볼 수도 있는 그런 사항이다.
이제 파괴 실험을 해보자. 스냅샷을 우선 찍어둔다.
시스템 전체 스냅샷을 미리 찍어놓고, perl라이브러리가 있는 디렉토리를 rm -rf로 테러하자.
복구하면 다시 perl이 다시 살아나는 것은 확인할 수 있다.
이제... 부분적인 파괴와 복구가 되는지도 테스트해보자.
새로운 부분을... "create"를 해보자.
root@docu:/export/home# ls
pressit force
root@docu:/export/home# zfs create rpool/export/home/data
root@docu:/export/home# ls
data pressit force
root@docu:/export/home#
이제 data안에 음악을 넣고
/usr/perl5는 rm -rf로 통째 테러를 했다.
빈 data를 스냅샷찍고 거기 음악을 넣었다.
root@docu:/# zfs rollback rpool/ROOT/opensolaris@20081221
음악은 살아있다 (!)
그렇다. 독립해 나오는 것이다. 우왕 ㅋ 굳 ㅋ
이런 식의 create 명령어면
DB, 홈페이지, 메일 을 따로따로 관리하여
스냅샷을 따로따로 찍고, 롤백하고 할 수 있는거다.
이상으로 zfs 스냅샷 기능 테스트가 끝났다.