동일한 이름의 두 ZFS 스냅샷이 실제로 동일한지 여부를 알 수 있는 방법이 있습니까?

동일한 이름의 두 ZFS 스냅샷이 실제로 동일한지 여부를 알 수 있는 방법이 있습니까?

두 개의 ZFS 스냅샷이 동일한지 아니면 단순히 이름이 같은지 어떻게 알 수 있습니까?

host-a이라는 이름의 두 대의 컴퓨터가 있다고 가정해 보겠습니다 host-b. 또한 host-a에 라는 ZFS 데이터 세트가 있다고 가정합니다 /tank/mydataset.

Host-A에서는 다음을 수행할 수 있습니다.zfs snapshot tank/mydataset@mysnapshot' and then I could 'zfs send tank/mydataset@mysnapshot | ssh host-b zfs receive tank/mydataset

이는 및 @mysnapshot에서 모두 동일하다는 것을 의미합니다 .host-ahost-b

반면에 host-aI could: zfs snapshot tank/mydataset@mysnapshot다음에 ssh host-b zfs snapshot tank/mydataset@mysnapshot.

두 번째 경우에는 두 스냅샷의 이름이 동일하지만 데이터 세트가 크게 다를 수 있습니다.

의 속성을 보면 tank/mydataset@mysnapshot스냅샷이 동일한지(예: GUID 또는 해시) 식별하는 명확한 방법이 나열되지 않습니다.

또 다른 스냅샷을 찍고 이를 통해 host-a tank/mydataset@mysnapshot2전송하려고 시도하는 것 외에 스냅샷의 이름뿐 아니라 블록이 동일한지 확인하는 방법이 있습니까?host-bzfs send -i @mysnapshot tank/mydataset@mysnapshot2 | ssh host-b zfs receive tank/mydataset

답변1

재산이 있어요구체적으로이 사용 사례의 경우.

zfs get guid pool/fs@snap스냅샷에 대한 GUID(Globally Unique ID)를 제공합니다. 두 스냅샷 간의 GUID가 일치하지 않으면 하나는 다른 스냅샷에서 복제되지 않으며 추가 증분 복제의 기반으로 작동하지 않습니다.

이것도 방법이다합창체복제 명령을 결정하기 위해 공통 스냅샷을 식별합니다.

(면책조항: 저는 Syncoid 복제 도구가 속한 Sanoid 프로젝트의 초기 개발자이자 최고 유지관리자입니다.)

관련 정보