가상 머신 디스크 이미지를 포함하는 ZFS 파일 시스템이 있다고 가정합니다.
/tank/examplevm/examplevm-flat.vmdk
그 ZFS 파일 시스템의 일일 스냅 샷을 생성한다고 가정 해 봅시다. 예 :
$ zfs snapshot tank@20120716
$ zfs snapshot tank@20120717
분명히 각 일일 스냅 샷 사이의 기간에 내 examplevm-flat.vmdk가 변경됩니다 (대부분의 경우 이미지 크기는 일정하게 유지되지만 가상 디스크의 블록은 수정 됨).
따라서 ZFS diff 명령은 파일을 두 스냅 샷간에 수정 된 것으로보고합니다.
$ zfs diff tank/@20120716 tank@20120717
M /tank/examplevm/examplevm-flat.vmdk
파일이 수정되었다는 것을 아는 것이 좋지만 vmdk에서 수정 된 바이트 / 블록 수에 훨씬 더 관심이 있습니다.
따라서 다음 질문에 대한 힌트에 관심이 있습니다.
- ZFS에는 두 스냅 샷 사이의 특정 파일에서 변경된 블록 수를보고하는 기능이 있습니까?
- 두 개의 파일 시스템 이미지를 이진화하고 변경된 블록 또는 바이트 수를보고하는 다른 도구가 있습니까? 나는 그것이
cmp –l file1 file2 | wc –l
그렇게한다는 것을 알고 있지만, 그것은 끔찍하고 엄청 느립니다.