
4 + 1 디스크로 구성된 소프트웨어 RAID5 어레이가 있는데 그중 2개의 디스크에 오류가 발생했습니다. 충격적인 유지 관리를 통해 실패한 디스크 중 하나가 이미지를 제거하기 위해 블록 수준 복사를 수행할 수 있을 만큼 오랫동안 다시 작동할 수 있기를 바라고 있습니다.
계획은 dd를 사용하여 디스크 4개(또는 5개 모두)의 이미지를 만든 다음 해당 이미지에서 어레이를 다시 빌드하는 것입니다.
내가 놓친 바로 그 일이 불가능하게 만드는 뭔가가 있습니까? 그렇지 않다면 어떻게 해야 할까요?
- 각 장치의 이미지를 파일로 복사
- 이것을 마운트하세요
- 이러한 이미지를 장치로 사용하도록 mdadm을 재구성하십시오.
분명히 데이터를 손상시키는 많은 일이 발생할 수 있지만 실제 데이터가 4개 디스크에 걸쳐 손상되지 않을 수 있다고 생각하는 이유가 있습니다.
- 두 번째 디스크 오류는 정전으로 인한 것일 수 있습니다.
- 복구하고 싶은 데이터가 첫 번째 실패 이후 기록되지 않았습니다.
답변1
일반적으로 이 접근 방식이 효과적입니다. 작동 중인 디스크가 있는 한(그리고 디스크가 실패할 것으로 예상하지 않는 한) 다음을 수행할 수도 있습니다.장치 매퍼를 사용하여 오버레이 스냅샷 생성디스크에서 데이터를 완전히 복사하는 대신(그러나 복사본을 백업으로 보관하는 것이 좋을 수 있음)
이미지 파일이 있으면 해당 파일에서 루프백 블록 장치를 만들어야 합니다.
losetup /dev/loopX /path/to/imagefileX
이 작업이 완료되면 다음을 수행할 수 있습니다.모으다루프백 블록 장치를 사용하는 어레이. 실패한 최신 디스크를 복구할 수 없어서 중복 디스크 이미지의 타임스탬프가 나머지 디스크 이미지와 달라지면 어레이가 조립을 거부합니다. 당신이 있는 한정말오류 이전에 기록된 데이터에만 관심이 있는 경우"실패한 소프트웨어 RAID 복구"커널 RAID 문서의 섹션. 복구 가능한 데이터 중 최소한 일부를 사용하여 어레이를 조립하는 데 도움이 될 것입니다.