RAID 1(처음 128MiB)로 시작하는 디스크 구조

RAID 1(처음 128MiB)로 시작하는 디스크 구조

2개의 2TB 디스크로 구성된 RAID 1이 있고 두 디스크 모두에 대한 범위의 암호화 해시를 계산할 때 범위가 디스크의 시작 부분에 있지 않으면 동일한 결과를 얻는다는 것을 알았습니다. 따라서 처음 부분의 모든 부분(그리고 마지막 부분에서는 RAID에 사용되는 파티션의 작은 부분)을 제외하고 두 디스크 모두 정확히 동일한 데이터를 저장합니다.

그러나 디스크 시작 부분에서는 체크섬이 일치하지 않습니다. 이는 거기에 저장된 데이터가 왜곡되었음을 의미합니다. 디스크 식별에 사용되는 데이터와 일부 기타 메타데이터를 여기에 저장하기를 원하기 때문에 처음 몇 킬로바이트 동안 이 작업이 수행되기를 원합니다. 하지만 처음 128MiB에서는 불일치가 발견되었습니다. 처음 127MiB만 건너뛰면 체크섬이 일치하지 않지만, 처음 128MiB를 건너뛰고 범위를 해시하면 체크섬이 일치합니다.

mdadm너무 많은 저장 공간을 차지하는 디스크의 시작 부분에 무엇이 저장되어 있습니까(단지 식별자와 비교하면, 물론 최신 하드 드라이브의 크기와 비교하면 전혀 무시할 수 있는 수준입니다)?

RAID에 사용되는 파티션의 시작 부분부터 데이터 처리를 시작한다는 점에 유의하세요. 디스크 시작부터 문제를 해결한 것이 아니고 처음 127MiB가 우연히 파티션에 속하지 않은 것입니다.

답변1

확인하다 mdadm --examine, Data Offset. 파티션이 충분히 큰 경우 기본값은 128M인 경우가 많습니다. 일상적인 작업에서는 데이터 오프셋이 어떤 목적으로도 사용되지 않습니다.

RAID를 추가하거나 RAID 레벨 및 레이아웃을 변경하기로 결정할 때까지. 그런 다음 데이터 오프셋이 약간 줄어들어 데이터 자체를 직접 덮어쓰지 않고도 데이터를 변경할 수 있는 버퍼가 생성됩니다. 따라서 정전, 재부팅 등의 상황이 발생하더라도 프로세스를 안전하게 재개할 수 있습니다.

사용 가능한 데이터 오프셋 공간이 남아 있지 않은 경우 --backup-file특정 확장 및 모양 변경 작업을 위해 를 제공 해야 합니다. 이 백업 파일은 RAID 외부에 저장되어야 하며 재부팅 후에도 유지되어야 합니다.

RAID 레이아웃을 절대 변경하지 않을 것이라고 확신하거나 이 경우 백업 파일을 사용해도 괜찮다면 --data-offset=드라이브당 128M를 낭비하지 않도록 1~2MiB를 더 작게 지정할 수 있습니다.

관련 정보